enhance: Add comprehensive .gitignore for deb-mock project
- Add mock-specific build artifacts (chroot/, mock-*, mockroot/) - Include package build files (*.deb, *.changes, *.buildinfo) - Add development tools (.coverage, .pytest_cache, .tox) - Include system files (.DS_Store, Thumbs.db, ._*) - Add temporary and backup files (*.tmp, *.bak, *.backup) - Include local configuration overrides (config.local.yaml, .env.local) - Add test artifacts and documentation builds - Comprehensive coverage for Python build system project This ensures build artifacts, chroot environments, and development tools are properly ignored in version control.
This commit is contained in:
parent
1a559245ea
commit
4c0dcb2522
329 changed files with 27394 additions and 965 deletions
128
docs/Release-Notes-5.5.md
Normal file
128
docs/Release-Notes-5.5.md
Normal file
|
|
@ -0,0 +1,128 @@
|
|||
---
|
||||
layout: default
|
||||
title: Release Notes - Mock 5.5
|
||||
---
|
||||
|
||||
Released on 2024-02-14.
|
||||
|
||||
|
||||
### Mock 5.5 New Features
|
||||
|
||||
- New `write_tar` option for `chroot_scan` plugin [added][PR#1324]. Without it,
|
||||
directory structure is created in `resultdir`. If `write_tar` is set to
|
||||
`True`, `chroot_scan.tar.gz` tarball will be created instead.
|
||||
|
||||
- A new `{% raw %}{{ repo_arch }}{% endraw %}` Jinja2 template (templated-dictionary) is provided
|
||||
by Mock. This variable is usable for DNF config options denoting URLs like
|
||||
`baseurl=`, `metalink=`, etc. Namely, it can be used instead of the DNF-native
|
||||
`$basearch` variable which [doesn't work properly for all the
|
||||
distributions][issue#1304]. The new `config_opts['repo_arch_map']` option has
|
||||
been added too, if additional tweaks with `repo_arch` template need to be done.
|
||||
|
||||
- Previously, only the file sizes were reported by the hw_info plugin:
|
||||
|
||||
~~~
|
||||
Filesystem Size Used Avail Use% Mounted on
|
||||
/dev/mapper/luks-3aa4fbe3-5a19-4025-b70c-1d3038b76bd4 399G 9.1G 373G 3% /
|
||||
/dev/mapper/luks-3aa4fbe3-5a19-4025-b70c-1d3038b76bd4 399G 9.1G 373G 3% /
|
||||
~~~
|
||||
|
||||
Newly, [also file system type is reported][issue#1263]:
|
||||
|
||||
~~~
|
||||
Filesystem Type Size Used Avail Use% Mounted on
|
||||
/dev/mapper/luks-3aa4fbe3-5a19-4025-b70c-1d3038b76bd4 btrfs 399G 9.1G 373G 3% /
|
||||
/dev/mapper/luks-3aa4fbe3-5a19-4025-b70c-1d3038b76bd4 btrfs 399G 9.1G 373G 3% /
|
||||
~~~
|
||||
|
||||
|
||||
### Mock 5.5 Bugfixes
|
||||
|
||||
- The Bash completion script has been fixed to properly complete arguments
|
||||
of [multi-arg options][issue#1279] like `--install` or `--chain`. This
|
||||
bug-fix is a follow-up for fix related to [issue#746][].
|
||||
|
||||
- Mock [has been][PR#1322] [fixed][commit#27dde5da] so that it no longer
|
||||
inadvertently changes the group ownership of the in-chroot $HOME directory
|
||||
to the wrong group ID. In previous versions of Mock, the group ownership
|
||||
was changed to the effective group ID of the user on the host that
|
||||
executed Mock. This could confuse some tools during the build process, as
|
||||
they might want to create similarly owned files at the `rpmbuild` time
|
||||
(but that assumption would be incorrect, such GID doesn't exist
|
||||
in-chroot). Now, Mock changes the files to the `mockbuild:mock`
|
||||
ownership, where the `mock` group ID is always 135 (the same GID on host
|
||||
and in-chroot). This matches the effective GID for the `rpmbuild`
|
||||
process, ensuring that the tools executed during the build process have
|
||||
full control over such files.
|
||||
|
||||
While on this, Mock was also [optimized][commit#db64d468202] to do this
|
||||
ownership change before, and only if, the `rpmbuild` process is started
|
||||
(so e.g. plain `mock --chroot` commands do not touch the file ownership at
|
||||
all).
|
||||
|
||||
- The `mock` package has been fixed to depend on precisely the same version
|
||||
of `mock-filesystem` sub-package (product of the same rpm build). This is
|
||||
to protect against incompatible Mock sub-package installations.
|
||||
|
||||
- Mock parses the DNF configuration specified in `config_opts["dnf.conf"]` itself
|
||||
to perform some post-processing tasks, such as bind-mounting the on-host repo
|
||||
directories into the bootstrap chroot based on this DNF config. In previous
|
||||
versions of Mock, there was an issue where it failed to parse the DNF config if
|
||||
some of the DNF options contained the '%' symbol. This was due to Python's
|
||||
ConfigParser raising an %-interpolation exception that was ignored but Mock, but
|
||||
resulting in Mock ignoring the rest of the config file and finishing without
|
||||
performing the mentioned bind-mounts. This bug has been fixed, and the '%' sign
|
||||
is no longer considered to be a special Python ConfigParser character.
|
||||
|
||||
- The `root_cache` plugin is designed to invalidate the cache tarball whenever the
|
||||
corresponding Mock configuration changes (any file in the list
|
||||
`config_opts['config_paths']` changes). This cache invalidation mechanism had
|
||||
been broken since Mock v3.2 when we rewrote the configuration file loader and
|
||||
inadvertently broke the `config_opts['config_paths']`. The config loader [has
|
||||
now been fixed][PR#1322], and the cache invalidation works again as expected.
|
||||
|
||||
### Mock Core Configs 40.1 changes
|
||||
|
||||
- Configuration files for Fedora 40 have been branched from Rawhide,
|
||||
according to the [Fedora 40 Schedule](https://fedorapeople.org/groups/schedule/f-40/f-40-all-tasks.html).
|
||||
|
||||
- Mageia 7 configs [marked as end-of-life][PR#1316].
|
||||
|
||||
- Mageia config files started using the `{% raw %}{{ repo_arch }}{% endraw %}` option to fix the
|
||||
[cross-arch builds][issue#1317].
|
||||
|
||||
- The OpenMandriva i686 chroots [have been marked as end-of-life][PR#1315], fixing
|
||||
[issue#987][] and [issue#1012][].
|
||||
|
||||
- [Added][PR#1283] a config option called "use_host_shadow_utils", to account for situations where
|
||||
users have host shadow-utils configurations that cannot provision or destroy users and
|
||||
groups in the buildroot; one example of this kind of configuration is using
|
||||
FreeIPA-provided subids on the buildhost. The option defaults to True since mock has made a conscious
|
||||
design decision to prefer using the host's shadow-utils, and we hope that this is a
|
||||
temporary workaround. Upstream issue is being tracked [here](https://github.com/shadow-maint/shadow/issues/897).
|
||||
|
||||
**Following contributors contributed to this release:**
|
||||
|
||||
* Jakub Kadlcik
|
||||
* Jani Välimaa
|
||||
* Martin Jackson
|
||||
* Tomas Kopecek
|
||||
* Vít Ondruch
|
||||
|
||||
|
||||
Thank you!
|
||||
|
||||
[commit#db64d468202]: https://github.com/rpm-software-management/mock/commit/db64d468202
|
||||
[issue#1012]: https://github.com/rpm-software-management/mock/issues/1012
|
||||
[commit#27dde5da]: https://github.com/rpm-software-management/mock/commit/27dde5da
|
||||
[PR#1324]: https://github.com/rpm-software-management/mock/pull/1324
|
||||
[PR#1322]: https://github.com/rpm-software-management/mock/pull/1322
|
||||
[issue#987]: https://github.com/rpm-software-management/mock/issues/987
|
||||
[PR#1315]: https://github.com/rpm-software-management/mock/pull/1315
|
||||
[PR#1283]: https://github.com/rpm-software-management/mock/pull/1283
|
||||
[issue#1263]: https://github.com/rpm-software-management/mock/issues/1263
|
||||
[issue#746]: https://github.com/rpm-software-management/mock/issues/746
|
||||
[issue#1317]: https://github.com/rpm-software-management/mock/issues/1317
|
||||
[issue#1304]: https://github.com/rpm-software-management/mock/issues/1304
|
||||
[issue#1279]: https://github.com/rpm-software-management/mock/issues/1279
|
||||
[PR#1316]: https://github.com/rpm-software-management/mock/pull/1316
|
||||
Loading…
Add table
Add a link
Reference in a new issue