|
| 1 | +--- |
| 2 | +layout: default |
| 3 | +title: Release Notes - Mock 6.7 and Core Configs 44.2 |
| 4 | +--- |
| 5 | + |
| 6 | +## [Release 6.7](https://rpm-software-management.github.io/mock/Release-Notes-6.7) - 2026-03-02 |
| 7 | + |
| 8 | +### New features and important changes |
| 9 | + |
| 10 | +* The default mock `umask` has been changed from `0002` to `0022` to prevent |
| 11 | + permission issues. The previous setting caused unexpected default permissions |
| 12 | + during image builds inside Mock. |
| 13 | + |
| 14 | +- New `expand_spec` plugin: This plugin expands the specfile into |
| 15 | + expanded-spec.txt within the results directory. This ensures access to a |
| 16 | + fully parsed and accurate specfile from within the chroot. ([Issue |
| 17 | + #1705][issue#1705]) |
| 18 | + |
| 19 | +- `/bin/yum` support for `--calculate-dependencies`: The |
| 20 | + `--calculate-dependencies` command now supports the yum package manager for |
| 21 | + building older distributions. This allows the use of appropriate bootstrap |
| 22 | + images with `/bin/yum` without issues. Additionally, `mock-hermetic-repo` has |
| 23 | + been updated with a `--compatibility` flag to create repositories compatible |
| 24 | + with both `dnf` and `yum`. |
| 25 | + |
| 26 | +* The `traceLog()` decorator, used for tracking when internal methods are |
| 27 | + entered and exited, has been disabled. **Warning:** We plan to remove this |
| 28 | + decorator entirely; please follow [issue #1681][] for updates. In the |
| 29 | + meantime, you can export the `MOCK_TRACE_LOG=true` environment variable to |
| 30 | + revert this change and re-enable the logging. |
| 31 | + |
| 32 | +* The suggested location for the host certificates bundle has been updated from |
| 33 | + `/etc/pki/tls/certs/ca-bundle.crt` to |
| 34 | + `/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem`, following the |
| 35 | + [droppingOfCertPemFile Fedora Change](https://fedoraproject.org/wiki/Changes/droppingOfCertPemFile). |
| 36 | + |
| 37 | + These bundles are automatically synced into Mock chroots for specific targets |
| 38 | + (e.g., openSUSE). This new location is also compatible with EPEL 8 hosts. |
| 39 | + Fixes [issue #1667][], |
| 40 | + |
| 41 | + |
| 42 | +### Bugfixes |
| 43 | + |
| 44 | +- RISC-V Personality Recognition: Mock now recognizes `riscv32` and `riscv64` |
| 45 | + architectures when selecting the execution personality for the RPM/DNF stack |
| 46 | + (see personality(2)). |
| 47 | + |
| 48 | +- `mock --scrub=all` now correctly backs up successful builds from the |
| 49 | + buildroot. This resolves [issue #1639][]. The backup process now uses `mv` |
| 50 | + semantics instead of `cp`, which avoids file duplication, preserves |
| 51 | + timestamps, and improves performance. Following a security review, the use of |
| 52 | + `util.run` was replaced with `os.replace` to ensure files are overwritten |
| 53 | + safely. Internal logs and comments in `backup_build_results` have also been |
| 54 | + clarified. |
| 55 | + |
| 56 | +* Mock no longer fails if `resolv.conf` is missing on the host. While builds |
| 57 | + requiring network access (`--enable-networking`) will still fail later, Mock |
| 58 | + will no longer crash with a `FileNotFoundError` during the initialization |
| 59 | + phase. |
| 60 | + |
| 61 | +* Hermetic builds now provide access to the "offline repository" from within the |
| 62 | + (directory with RPM files) via the `/hermetic_repo` bind-mount ([PR#1712][]). |
| 63 | + |
| 64 | + While some packages expect `/var/cache/{dnf|yum}` to be populated with these |
| 65 | + downloaded RPMs, `dnf4` does not do so for the "offline" repositories |
| 66 | + (`baseurl=file://...`) used in hermetic builds (unlike `dnf5` with |
| 67 | + `keepcache=1`). Providing `/hermetic_repo` ensures that buildroot packages |
| 68 | + are always easily accessible. |
| 69 | + |
| 70 | +* Bootstrap image caching for hermetic builds now utilizes |
| 71 | + [skopeo](https://github.com/containers/skopeo) sync instead of |
| 72 | + `podman pull|save` commands. Skopeo handles digests more reliably, ensuring |
| 73 | + the correct image is always used. |
| 74 | + |
| 75 | +* The `file_util.rmtree` cleanup process has been significantly accelerated, |
| 76 | + particularly for large buildroots. For example, the cleanup time for a tree |
| 77 | + containing ~2M files has been reduced from over 13 minutes to approximately |
| 78 | + one minute. |
| 79 | + |
| 80 | +* Fixed the `mock --help` output to inform user about `--scrub=bootstrap`. |
| 81 | + |
| 82 | +* The `unbreq` plugin now supports both `--isolation=simple` and |
| 83 | + `--no-bootstrap-chroot` options. Additionally, the plugin no longer crashes |
| 84 | + when encountering `(foo if bar)` expressions in `BuildRequires`. |
| 85 | + |
| 86 | +* The performance of `unbreq` has been significantly improved through caching |
| 87 | + and parallelization, and the plugin now logs standard output for failed |
| 88 | + commands. |
| 89 | + |
| 90 | +* The Mock package now pulls in `dnf5` by default on Enterprise Linux 11+ |
| 91 | + distributions. |
| 92 | + |
| 93 | + |
| 94 | +### Mock Core Configs 44.2 changes |
| 95 | + |
| 96 | +- openSUSE Tumbleweed configs now use DNF5 for the package manager. |
| 97 | + |
| 98 | +#### The following contributors have contributed to this release: |
| 99 | + |
| 100 | +- Marián Konček |
| 101 | +- Miroslav Suchý |
| 102 | +- mkoncek |
| 103 | +- Neal Gompa |
| 104 | +- nikitych |
| 105 | +- Pavel Raiskup |
| 106 | +- Sérgio M. Basto |
| 107 | +- Simone Caronni |
| 108 | +- Tomas Kopecek |
| 109 | +- Yuming Zhu |
| 110 | + |
| 111 | +Thank You! |
| 112 | + |
| 113 | +[issue#1639]: https://github.com/rpm-software-management/mock/issues/1639 |
| 114 | +[issue#1681]: https://github.com/rpm-software-management/mock/issues/1681 |
| 115 | +[issue#1667]: https://github.com/rpm-software-management/mock/issues/1667 |
| 116 | +[issue#1705]: https://github.com/rpm-software-management/mock/issues/1705 |
| 117 | +[PR#1712]: https://github.com/rpm-software-management/mock/pull/1712 |
0 commit comments