Bug 1249716 - rt-4.2.11-1.fc24 FTBFS: Installed (but unpackaged) file(s) found with rpm-4.13
rt-4.2.11-1.fc24 FTBFS: Installed (but unpackaged) file(s) found with rpm-4.13
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: rt (Show other bugs)
24
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Ralf Corsepius
Fedora Extras Quality Assurance
http://koji.fedoraproject.org/koji/ta...
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2015-08-03 11:43 EDT by Petr Pisar
Modified: 2016-06-23 12:20 EDT (History)
9 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-06-23 12:20:00 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Petr Pisar 2015-08-03 11:43:35 EDT
rt-4.2.11-1.fc24 fails to build in F24:

Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/rt-4.2.11-2.fc24.x86_64
error: Installed (but unpackaged) file(s) found:
   /usr/share/doc/rt/docs/README
   /usr/share/doc/rt/docs/UPGRADING-2.0
   /usr/share/doc/rt/docs/UPGRADING-3.0
   /usr/share/doc/rt/docs/UPGRADING-3.2
   /usr/share/doc/rt/docs/UPGRADING-3.4
   /usr/share/doc/rt/docs/UPGRADING-3.6
   /usr/share/doc/rt/docs/UPGRADING-3.8
   /usr/share/doc/rt/docs/UPGRADING-4.0
   /usr/share/doc/rt/docs/UPGRADING-4.2
   /usr/share/doc/rt/docs/UPGRADING.mysql
   /usr/share/doc/rt/docs/authentication.pod
   /usr/share/doc/rt/docs/automating_rt.pod
   /usr/share/doc/rt/docs/backups.pod
   /usr/share/doc/rt/docs/charts.pod
   /usr/share/doc/rt/docs/customizing/approvals.pod
   /usr/share/doc/rt/docs/customizing/articles_introduction.pod
   /usr/share/doc/rt/docs/customizing/lifecycles.pod
   /usr/share/doc/rt/docs/customizing/search_result_columns.pod
   /usr/share/doc/rt/docs/customizing/styling_rt.pod
   /usr/share/doc/rt/docs/customizing/templates.pod
   /usr/share/doc/rt/docs/customizing/timezones_in_charts.pod
   /usr/share/doc/rt/docs/dashboards.pod
   /usr/share/doc/rt/docs/extending/clickable_links.pod
   /usr/share/doc/rt/docs/extending/external_custom_fields.pod
   /usr/share/doc/rt/docs/extending/using_forms_widgets.pod
   /usr/share/doc/rt/docs/extensions.pod
   /usr/share/doc/rt/docs/full_text_indexing.pod
   /usr/share/doc/rt/docs/glossary.pod
   /usr/share/doc/rt/docs/hacking.pod
   /usr/share/doc/rt/docs/images/action-decline.png
   /usr/share/doc/rt/docs/images/customize-dashboards-menu.png
   /usr/share/doc/rt/docs/images/dashboard-chart.png
   /usr/share/doc/rt/docs/images/dashboard-content-invoices.png
   /usr/share/doc/rt/docs/images/dashboard-search-sorting.png
   /usr/share/doc/rt/docs/images/dashboard-subscription.png
   /usr/share/doc/rt/docs/images/general-owner-chart.png
   /usr/share/doc/rt/docs/images/general-owner-lastupdated-chart.png
   /usr/share/doc/rt/docs/images/general-status-chart.png
   /usr/share/doc/rt/docs/images/global-lifecycle-group-rights.png
   /usr/share/doc/rt/docs/images/lifecycle-choices.png
   /usr/share/doc/rt/docs/images/order-history-example.png
   /usr/share/doc/rt/docs/images/queue-created-started-chart.png
   /usr/share/doc/rt/docs/images/theme_editor_defaults.png
   /usr/share/doc/rt/docs/incremental-export/README
   /usr/share/doc/rt/docs/incremental-export/Record_Local.pm
   /usr/share/doc/rt/docs/incremental-export/schema.mysql
   /usr/share/doc/rt/docs/initialdata.pod
   /usr/share/doc/rt/docs/network-diagram.svg
   /usr/share/doc/rt/docs/reminders.pod
   /usr/share/doc/rt/docs/reporting/feeds.pod
   /usr/share/doc/rt/docs/rt_perl.pod
   /usr/share/doc/rt/docs/schema.dot
   /usr/share/doc/rt/docs/security.pod
   /usr/share/doc/rt/docs/web_deployment.pod
   /usr/share/doc/rt/docs/writing_extensions.pod
   /usr/share/doc/rt/docs/writing_portlets.pod
    Installed (but unpackaged) file(s) found:
   /usr/share/doc/rt/docs/README
   /usr/share/doc/rt/docs/UPGRADING-2.0
   /usr/share/doc/rt/docs/UPGRADING-3.0
   /usr/share/doc/rt/docs/UPGRADING-3.2
   /usr/share/doc/rt/docs/UPGRADING-3.4
   /usr/share/doc/rt/docs/UPGRADING-3.6
   /usr/share/doc/rt/docs/UPGRADING-3.8
   /usr/share/doc/rt/docs/UPGRADING-4.0
   /usr/share/doc/rt/docs/UPGRADING-4.2
   /usr/share/doc/rt/docs/UPGRADING.mysql
   /usr/share/doc/rt/docs/authentication.pod
   /usr/share/doc/rt/docs/automating_rt.pod
   /usr/share/doc/rt/docs/backups.pod
   /usr/share/doc/rt/docs/charts.pod
   /usr/share/doc/rt/docs/customizing/approvals.pod
   /usr/share/doc/rt/docs/customizing/articles_introduction.pod
   /usr/share/doc/rt/docs/customizing/lifecycles.pod
   /usr/share/doc/rt/docs/customizing/search_result_columns.pod
   /usr/share/doc/rt/docs/customizing/styling_rt.pod
   /usr/share/doc/rt/docs/customizing/templates.pod
   /usr/share/doc/rt/docs/customizing/timezones_in_charts.pod
   /usr/share/doc/rt/docs/dashboards.pod
   /usr/share/doc/rt/docs/extending/clickable_links.pod
   /usr/share/doc/rt/docs/extending/external_custom_fields.pod
   /usr/share/doc/rt/docs/extending/using_forms_widgets.pod
   /usr/share/doc/rt/docs/extensions.pod
   /usr/share/doc/rt/docs/full_text_indexing.pod
   /usr/share/doc/rt/docs/glossary.pod
   /usr/share/doc/rt/docs/hacking.pod
   /usr/share/doc/rt/docs/images/action-decline.png
   /usr/share/doc/rt/docs/images/customize-dashboards-menu.png
   /usr/share/doc/rt/docs/images/dashboard-chart.png
   /usr/share/doc/rt/docs/images/dashboard-content-invoices.png
   /usr/share/doc/rt/docs/images/dashboard-search-sorting.png
   /usr/share/doc/rt/docs/images/dashboard-subscription.png
   /usr/share/doc/rt/docs/images/general-owner-chart.png
   /usr/share/doc/rt/docs/images/general-owner-lastupdated-chart.png
   /usr/share/doc/rt/docs/images/general-status-chart.png
   /usr/share/doc/rt/docs/images/global-lifecycle-group-rights.png
   /usr/share/doc/rt/docs/images/lifecycle-choices.png
   /usr/share/doc/rt/docs/images/order-history-example.png
   /usr/share/doc/rt/docs/images/queue-created-started-chart.png
   /usr/share/doc/rt/docs/images/theme_editor_defaults.png
   /usr/share/doc/rt/docs/incremental-export/README
   /usr/share/doc/rt/docs/incremental-export/Record_Local.pm
   /usr/share/doc/rt/docs/incremental-export/schema.mysql
   /usr/share/doc/rt/docs/initialdata.pod
   /usr/share/doc/rt/docs/network-diagram.svg
   /usr/share/doc/rt/docs/reminders.pod
   /usr/share/doc/rt/docs/reporting/feeds.pod
   /usr/share/doc/rt/docs/rt_perl.pod
   /usr/share/doc/rt/docs/schema.dot
   /usr/share/doc/rt/docs/security.pod
   /usr/share/doc/rt/docs/web_deployment.pod
   /usr/share/doc/rt/docs/writing_extensions.pod
   /usr/share/doc/rt/docs/writing_portlets.pod

This is probably caused by upgrading rpm to 4.12.90.
Comment 1 Ralf Corsepius 2015-08-03 12:29:01 EDT
Ageed, this likely is caused by current rpm's brokeneness.

I am not going to address this, but consider this to be caused by a severe bug in rpm.
Comment 2 Ľuboš Kardoš 2015-08-04 06:58:10 EDT
The problem is that in a previous version of rpm was bug causing that all files in %{_pkgdocdir} became part of a package despite the fact that they wasn't explicitly listed in file list (#728959). We fixed that bug and changed that behaviour intentionally. I understand that this change of behaviour is unpleasant for you because it causes FTBS but former behaviour was broken and we don't plan to revert back to that behaviour. Please fix your package.

Your install script (during "make install") installs some files in /usr/share/doc/rt/docs. To fix this problem it will be enough to list all those files in file list section of your spec.

BTW %doc followed by relative paths of files copies these files from BUILD to BUILDROOT/%{_pkgdocdir}. And you don't need to do that because this is already done by your install script (by "make install"). 

You don't need to use %doc for absolute paths in %{_pkgdocdir} either because all files in %{_pkgdocdir} are automatically marked as doc files.

So this:

%files
%doc %{_pkgdocdir}/docs/README
...

is the same as:

%files
%{_pkgdocdir}/docs/README
...
Comment 3 Ralf Corsepius 2015-08-06 07:17:08 EDT
(In reply to Ľuboš Kardoš from comment #2)
> The problem is that in a previous version of rpm was bug causing that all
> files in %{_pkgdocdir} became part of a package despite the fact that they
> wasn't explicitly listed in file list (#728959). We fixed that bug and
> changed that behaviour intentionally. I understand that this change of
> behaviour is unpleasant for you 

Please understand that I do not agree with you. IMO, you FUBARed rpm's %doc handling.

> because it causes FTBS but former behaviour
> was broken and we don't plan to revert back to that behaviour.
There was nothing wrong with this package.

It was installing some files into %_pkgdocdir directly and was adding others using %doc.

This was one way, recommended by the former rpm-maintainer - You broke that!

> BTW %doc followed by relative paths of files copies these files from BUILD
> to BUILDROOT/%{_pkgdocdir}. And you don't need to do that because this is
> already done by your install script (by "make install"). 
You are wrong again.

rt's "make install" installs a lot of files into %_pkgdocdir. %doc was used to add some files.
 
> You don't need to use %doc for absolute paths in %{_pkgdocdir} either
> because all files in %{_pkgdocdir} are automatically marked as doc files.

For now, I resorted to manually install those files, which used to be %doc and to use
%files
%{_pkgdocdir}

Also, let me emphasize that I furthon will not step in to fix FTBS in future mass rebuild because I consider these FTBSes your responsibility, which is why I am expecting you to fix each and every package yourselves.

Alos, IMO, your change does not fix anything in rpms. To the contrary. You broke rpm.
Comment 4 Florian Festi 2015-08-18 11:53:46 EDT
You are right that using rt's "make install" in combination with %doc is a legitimate (and recommended) way of handling this situation and you are right in your expectation that both can be used together.

But if you do install files with "make install" (or any other command than %doc) you must add the files to a (sub) package by adding it to a %files section - either directly or as part of a glob or directory. The error you see is caused by not adding those files.

So one way to solve this for the rt package is to add %pkgdocdir/* to the %files section.


Unfortunately this packaging error has been hidden by a bug until now that adds all files in %{_pkgdocdir} to the (sub) package if %doc is used in the %files section. This is clearly wrong for a number of reasons:

1) It creates an error about unrelated files if you remove the %doc directives
2) It adds files to a package it may not belong into if the files should actually go into a different sub package.
3) It hides the error message for files erroneously copied into the %{_pkgdocdir}


For the case that there are too many other packages with this problem this need obviously handled in a proper way. We already have some code to keep the packages building and just issue a warning. But I am not sure if this is really the way to go. If there is just a small number packages affected fixing those and getting rid of the whole issue seems like a better and easier way.
Comment 5 Jan Kurik 2016-02-24 08:31:21 EST
This bug appears to have been reported against 'rawhide' during the Fedora 24 development cycle.
Changing version to '24'.

More information and reason for this action is here:
https://fedoraproject.org/wiki/Fedora_Program_Management/HouseKeeping/Fedora24#Rawhide_Rebase

Note You need to log in before you can comment on or make changes to this bug.