ELBA-2022-14606 - packit Bug Fix update

Release Date:2022-05-18


- When initializing source-git repos, the author of downstream commits created from patch files which are not in a git-am format is set to the original author of the patch-file in dist-git, instead of using the locally configured Git author. (#1575)
- Packit now supports release_suffix configuration option that allows you to override the long release string provided by Packit that is used to ensure correct ordering and uniqueness of RPMs built in Copr. (#1568)
- From the security perspective, we have to decided to disable the create_pr option for our service, from now on Packit will unconditionally create PRs when running propose-downstream.
We have also updated the propose-downstream CLI such that it is possible to use create_pr from configuration or override it via --pr/--no-pr options. (#1563)
- The source-git update-* commands now check whether the target repository is pristine and in case not raise an error. (#1562)

- A new configuration option downstream_branch_name has been added, which is meant to be used in source-git projects and allow users to customize the name of the branch in dist-git which corresponds to the current source-git branch. (#1555)
- Introduced two new build and test target aliases: fedora-latest-stable resolves to the latest stable Fedora Linux release,
while fedora-branched resolves to all branched releases (all Fedora Linux release, except rawhide). (#1546)
- When using post_upstream_clone to generate your spec-file, Packit now correctly checkouts the release before the action is run. (#1542)

- packit source-git update-dist-git and packit source-git update-source-git now check the synchronization of source-git and dist-git repositories prior to doing the update. If the update can't be done, for example, because the histories have diverged, the command provides instructions on how to synchronize the repositories. A --force option is available to try to update the destination repository anyway.
- Downstream synchronization of the Packit configuration file (aka packit.yaml) should be fixed. (#1532)
- Packit will no longer error out when trying to create a new Copr repository when it is already present (caused by a race condition). (#1527)
- Interactions with Bodhi should be now more reliable when creating Bodhi updates. (#1528)

- When using Packit CLI for creating Bodhi updates, you can now set fas_username and fas_password
in your Packit user config to not be asked about that when the command is executed. (#1517)

- When specfile is being generated, and both specfile_path and
downstream_package_name are not set, Packit now correctly resolves this
situation and sets specfile_path to the name of the upstream repo suffixed
with '.spec'. (#1499)
- We are now building SRPMs for Packit's own PRs in Copr. For more info see #1490 and
https://packit.dev/docs/configuration/#srpm_build_deps (#1490)
- All source-git-commands were updated to append a From-source-git-commit or From-dist-git-commit
Git-trailer to the commit messages they create in dist-git or source-git, in order to
save the hash of the commits from which these commits were created. This information
is going to be used to tell whether a source-git repository is in sync with the
corresponding dist-git repository. (#1488)
- Spec file and configuration file are no more automatically added to the list of files
to sync when the new files_to_sync option is used. The old synced_files option is
deprecated. (#1483)
- We have added a new configuration option for Copr builds enable_net that allows you to
disable network access during Copr builds. It is also complemented by
--enable-net/--disable-net CLI options if you use Packit locally. (#1504)

- Synchronization of default files can now be disabled using a new config
files_to_sync. Key sync_files is now deprecated. (#1483)
- Packit now correctly handles colons in git trailer values in source-git commits. (#1478)
- Fedora 36 was added to the static list of fedora- aliases. (#1480)

- A new packit source-git update-source-git command has been introduced for
taking new changes from dist-git (specified by a revision range) to source-git.
These may include any changes except source code, patches and Version tag
changes in the spec file. ([packit#1456](https://github.com/packit/packit/pull/1456))
- There's a new configuration option create_sync_note that allows you to
disable creating of README by packit in downstream. ([packit#1465](https://github.com/packit/packit/pull/1465))
- A new option --no-require-autosetup for source-git init command has been
introduced. Please note that source-git repositories not using
%setup -q

not be properly initialized. ([packit#1470](https://github.com/packit/packit/pull/1470))

- Packit now correctly finds the release, even if you don't use the version as
the title of the release on GitHub. ([packit#1437](https://github.com/packit/packit/pull/1437))
- Local branches are now named as pr/{pr_id} when checking out a PR, even
when it's not being merged with the target branch. This results in the NVR
of the build containing pr{pr_id} instead of pr.changes{pr_id}. ([packit#1445](https://github.com/packit/packit/pull/1445))
- A bug which caused ignoring the --no-bump and --release-suffix options
when creating an SRPMs from source-git repositories has been fixed. Packit
also doesn't touch the Release field in the specfile unless it needs to be
changed (the macros are not expanded that way when not necessary). ([packit#1452](https://github.com/packit/packit/pull/1452))
- When checking if directories hold a Git-tree, Packit now also allows .git
to be a file with a gitdir reference, not only a directory. ([packit#1458](https://github.com/packit/packit/pull/1458))

- A new packit prepare-sources command has been implemented for preparing
sources for an SRPM build using the content of an upstream repository.
- Packit now visibly informs about an ongoing cloning process to remove
potential confusion.
- The upstream_package_name config option is now checked for illegal
characters and an error is thrown if it contains them.

- Running post-upstream-clone action in propose-downstream command was fixed.
This solves the issue for projects that generate the specfile during this action.
- New config option env has been added for specifying environment variables
used for running tests in the Testing Farm.

- Packit now supports changelog-entry action that is used when creating
SRPM. The action is supposed to generate whole changelog entry (including
the - at the start of the lines) and has a priority over any other way we
modify the changelog with. (#1367)
- Fixed an issue, which raised an UnicodeEncodingError, when working with
dist-git patch files with an encoding other than UTF-8. (#1406)
- Backup alias definitions now reflect the official release of Fedora Linux 35. (#1405)
- We have introduced a new configuration option merge_pr_in_ci that allows
you to disable merging of PR into the base branch before creating SRPM in
service. (#1395)
- Fixed an issue, where spec-files located in a sub-directory of upstream
projects, were not placed in the root of the dist-git repo when proposing
changes downstream. (#1402)

- Packit will deduce the version for SRPM from the spec file, if there are no git tags or action for acquiring current version defined. (#1388)
- We have introduced new options for generating SRPM packages: (#1396)
- --no-bump that prevents changing of the release in the SRPM, which can be used for creating SRPMs on checked out tags/releases.
- --release-suffix that allows you to customize the suffix after the release number, e.g. reference bugzilla or specific branch of the build.

- Bug in Packit causing issues with local build when the branch was named with prefix rpm has been fixed. (#1380)
- We have added a new option to Packit CLI when creating Bodhi updates, you can use -b or --resolve-bugzillas and specify IDs (separated by comma, e.g. -b 1 or -b 1,2,3) of bugzillas that are being closed by the update. (#1383)

- packit validate-config was updated to check if files to be synced
downstream are present in the upstream repo and emit a warning in case they
are missing. (#1366)
- Patch files are read as byte streams now, in order to support having
non-UTF-8 characters. (#1372)

- packit source-git init was updated to try to apply patches with git am first, and use patch only when this fails, in order to keep the commit message of Git-formatted (mbox) patch files in the source-git history. (#1358)
- Packit now provides PACKIT_RPMSPEC_RELEASE environment variable in actions. (#1363)

- status command has been refactored and now provides much cleaner output. (#1329)
- A log warning is raised if the specfile specified by the user in the config doesn't exist. (#1342)
- Packit by default locally merges checked out pull requests into target branch. Logging for checking out pull requests was improved to contain hashes and summaries of last commit on both source and target branches. (#1344)
- source-git update-dist-git now supports using Git trailers to define patch metadata, which will control how patches are generated and added to the spec-file. source-git init uses this format to capture patch metadata when setting up a source-git repo, instead of the YAML one. To maintain backwards compatibility, the YAML format is still parsed, but only if none of the patches defines metadata using Git trailers. (#1336)
- Fixed a bug that caused purging or syncing upstream changelog (when not configured) from specfile when running propose-downstream. New behavior preserves downstream changelog and in case there are either no entries or no %changelog section present, it is created with a new entry. (#1349)

- Propose-downstream: log when a PR already exists downstream (#1322).
- packit init to set spec file path in the config if it's not defined (#1313).
- Make it possible to clone packages from staging dist-git (#1306).
- Source-git: squash patches by patch name - no need to have a dedicated attribute, squash_commits, for that (#1309).
- Source-git: look for the config file in .distro/source-git.yaml as well (#1302).
- Source-git: change logging from error to warning when %prep is not using setup (#1317).

- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild

- Source-git: source-git init was refactored, which also changed and simplified the CLI.

- Release 0.33.1

- Command packit generate was removed. It has been deprecated for a while
in favour of packit init. (#1269)
- Packit now explicitly requires git and rpm-build. (#1276)
- Source-git: Patch handling is more consistent. (#1263)
- Source-git: Passing changelog from source-git repo to dist-git was fixed. (#1265)
- Source-git: There is a new source-git subcommand, that groups source-git related
commands init and update-dist-git. (#1273)

- Downstream package name is set when dist-git path is provided. (#1246)
- A bug with older Python present on Fedora Linux 32 and EPEL 8 is fixed. (#1240)
- There is a new update-dist-git subcommand that is
an improved offline version of propose-downstream. (#1228)
- Source-git: Commit metadata newly includes patch_id. (#1252)

- Fixed a bug caused by new click release. (#1238)

- Source-git: add info about sources to packit.yaml when initiating a new source-git repo
and don't commit dist-git sources from the lookaside cache. (#1208, #1216)
- Source-git: fix SRPM creation failing with duplicate Patch IDs. (#1206)
- Support git repository cache. (#1214)
- Reflect removed COPR chroots in a COPR project. (#1197)
- Deprecate current_version_command and create_tarball_command. (#1212)
- Fix crashing push-updates command. (#1170)
- Improve fmf/tmt tests configuration. (#1192)

- Remove the no-op --dry-run option.
- Handle centos-stream targets as centos-stream-8, in order to help with the name change in Copr.
- fmf_url and fmf_ref can be used in a job's metadata to specify an external repository and reference to be used to test the package.
- Introduce a fedora-latest alias for the latest _branched_ version of Fedora Linux.
- Add a top-level option -c, --config to specify a custom path for the package configuration (aka packit.yaml).
- Source-git: enable using CentOS Stream 9 dist-git as a source.
- Source-git: rename the subdirectory to store downstream packaging files from fedora to the more general .distro.
- Source-git: fix creating source-git repositories when Git is configured to call the default branch something other then master.

- (Source-git) Several improvements of history linearization.
- (Source-git) Detect identical patches in propose-downstream.
- (Source-git) Patches in a spec file are added after the first empty line below the last Patch/Source.
- Fetch all sources defined in packit.yaml.
- New option to sync only specfile from downstream.

- Fix construction of the Koji tag for epel branches when running packit create-update. ([#1122](https://github.com/packit/packit/pull/1122))
- create-update now also shows a message about Bodhi requiring the password. ([#1127](https://github.com/packit/packit/pull/1127))
- packit init correctly picks up sources from CentOS and fetches specfile from CentOS dist-git. ([#1106](https://github.com/packit/packit/pull/1106))
- Fix translating of the target aliases by treating the highest pending version in Bodhi as rawhide. ([#1114](https://github.com/packit/packit/pull/1114))
- The format of Packit logs is unified for all log levels. ([#1119](https://github.com/packit/packit/pull/1119))
- There is a new configuration option sources which enables to define sources to override their URLs in specfile.
You can read more about this in [our documentation](https://packit.dev/docs/configuration/#sources). ([#1131](https://github.com/packit/packit/pull/1131))

- propose-update command now respects requested dist-git branches. ([#1094](https://github.com/packit/packit/pull/1094))
- Improve the way how patches are added to spec file. ([#1100](https://github.com/packit/packit/pull/1100))
- --koji-target option of the build command now accepts aliases. ([#1052](https://github.com/packit/packit/pull/1052))
- propose-downstream on source-git repositories now always uses --local-content. ([#1093](https://github.com/packit/packit/pull/1093))
- Don't behave as if ref would be always a branch. ([#1089](https://github.com/packit/packit/pull/1089))
- Detect a name of the default branch of a repository instead of assuming it to be called master. ([#1074](https://github.com/packit/packit/pull/1074))

- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild

- No user-facing changes done in this release.

- The propose-update has been renamed to propose-downstream; propose-update is now deprecated
to unify the naming between CLI and service. ([@jpopelka](https://github.com/jpopelka), [#1065](https://github.com/packit-service/packit/pull/1065))
- Our README has been cleaned and simplified. ([@ChainYo](https://github.com/ChainYo), [#1058](https://github.com/packit-service/packit/pull/1058))
- The :champagne: comment with the installation instructions has been disabled by default. ([@mfocko](https://github.com/mfocko), [#1057](https://github.com/packit-service/packit/pull/1057))
- More information can be found in [our documentation](https://packit.dev/docs/configuration/#notifications).
- Packit is being prepared to be released in EPEL 8 so it can be consumed in RHEL and CentOS Stream. ([@nforro](https://github.com/nforro), [#1055](https://github.com/packit-service/packit/pull/1055))

- packit init introduces the --upstream-url option. When specified,
init also sets up a source-git repository next to creating a configuration file.
- Don't rewrite macros when setting release and version in spec file.
- Fix generation of Copr settings URL for groups.
- Improve processing of the version when proposing a Fedora update.

- pre-commit autoupdate (Jiri Popelka)
- 0.21.0 release (Release bot)
- parsing git remote URL: inform what's happening... (Tomas Tomecek)
- Revert 'Allow recursive search for specfile in repository' (Matej Focko)
- Regenerate test_data for recursive (Matej Focko)
- Allow recursive search for specfile in repository (Matej Focko)
- cli.copr-build: replace / with - (Tomas Tomecek)
- copr, log CoprException.result when creating repo fails (Tomas Tomecek)
- Delete recipe-tests.yaml (Jiri Popelka)
- Add build to default jobs (lbarcziova)
- Add test case for Upstream._fix_spec_source() (Nikola Forro)
- Fix SpecFile.get_source() (Nikola Forro)


Updated Packages

Release/ArchitectureFilenameMD5sumSuperseded By Advisory
Oracle Linux 8 (x86_64) packit-0.50.0-1.el8.src.rpmc73060d8771d7daf4bcbeccbb2bea7eb-

This page is generated automatically and has not been checked for errors or omissions. For clarification or corrections please contact the Oracle Linux ULN team