#461 Fedora-review fails to parse rpmlit output and doesn't show a valid error message in rpmlint section
Opened 2 years ago by nikromen. Modified a year ago

Hello,

for example when I do: fedora-review -b 2130897 the rpmlint results in the review.txt file are:

Rpmlint
-------
Cannot parse rpmlint output:


Rpmlint (installed packages)
----------------------------
============================ rpmlint session starts ============================
rpmlint: 2.4.0
configuration:
    /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml
    /etc/xdg/rpmlint/fedora-legacy-licenses.toml
    /etc/xdg/rpmlint/fedora-spdx-licenses.toml
    /etc/xdg/rpmlint/fedora.toml
    /etc/xdg/rpmlint/scoring.toml
    /etc/xdg/rpmlint/users-groups.toml
    /etc/xdg/rpmlint/warn-on-functions.toml
checks: 31, packages: 1

vcs-diff-lint.noarch: W: no-manual-page-for-binary vcs-diff-lint
vcs-diff-lint.noarch: W: no-manual-page-for-binary vcs-diff-lint-csdiff-pylint
vcs-diff-lint.noarch: W: incoherent-version-in-changelog 1-1 ['1-1.git.6.5ce5d2e.fc38', '1-1.git.6.5ce5d2e']
 1 packages and 0 specfiles checked; 0 errors, 3 warnings, 0 badness; has taken 0.0 s 

I think there are two issues:


1) I get the Rpmlint ----- Cannot parse rpmlint output: error every time (and I mean in every project... not just in this particular case) despite the fact that rpmlint gets an additional info about src rpm file:

$ rpmlint vcs-diff-lint-1-1.git.6.5ce5d2e.fc38.src.rpm 
============ rpmlint session starts ============
rpmlint: 2.2.0
configuration:
    /usr/lib/python3.10/site-packages/rpmlint/configdefaults.toml
    /etc/xdg/rpmlint/fedora-legacy-licenses.toml
    /etc/xdg/rpmlint/fedora-spdx-licenses.toml
    /etc/xdg/rpmlint/fedora.toml
    /etc/xdg/rpmlint/licenses.toml
    /etc/xdg/rpmlint/scoring.toml
    /etc/xdg/rpmlint/users-groups.toml
    /etc/xdg/rpmlint/warn-on-functions.toml
checks: 32, packages: 1

vcs-diff-lint.spec: W: invalid-url Source0: vcs-diff-lint-git-6.5ce5d2e.tar.gz

which is not included in rpmlint sections in the review.txt file. So Rpmlint section should report something


2) The error message Cannot parse rpmlint output: and then nothing after it, is very confusing. I think the issue is that no message about output is returned (see https://pagure.io/FedoraReview/blob/master/f/src/FedoraReview/helpers_mixin.py#_146 - there's just Cannot parse rpmlint output: returned but the output is ignored) so it seems like output error message is empty which may not be true.


EDIT:
I noticed a one more bug. When I run
$ fedora-review --prebuilt --rpm-spec --name vcs-diff-lint --define DISTTAG
on the src rpm and spec file of the package mentioned above, the rpmlint section of review.txt doesn't contain even the Rpmlint (installed packages) message.

Rpmlint
-------
Cannot parse rpmlint output:


Rpmlint (installed packages)
----------------------------
Cannot parse rpmlint output:

The code calls rpmlint with the --ignore-unused-rpmlintrc parameter, which was introduced in RPMLint 2.3 and in the repos is still an older version.

When I installed rpmlint from testing
https://bodhi.fedoraproject.org/updates/FEDORA-2022-d35cbc6a66
both "Rpmlint" sections were correct - even on Copr builders where we discovered this issue.

Login to comment on this ticket.

Metadata