This is a tracking bug for Change: RPM-4.12
For more details, see: http://fedoraproject.org//wiki/Changes/RPM-4.12
Update RPM to the upcoming 4.12 release.
RPM 4.12 released, built for rawhide and active in rawhide buildroots now.
I wrote a draft description of this change for the Fedora 21 Alpha release notes. Please take a look at https://fedoraproject.org/wiki/Documentation_Development_Beat#RPM_4.12 and let me know if you would like to change or add anything. Most of the text was taken directly from the wiki page.
Hi, overall looks okay, but I'd change
- Support for weak dependencies. (Note that this does not automatically mean Fedora 21 packages all support this feature.)
+ Support for weak dependencies. (Note that this does not automatically mean Fedora packages and other tools support this feature.)
...to give a more realistic view of the situation: in Fedora 21, the weak requires in rpm do *absolutely nothing at all*, they're just an enabler for future progress.
All right, I'll update that. Thanks, Panu!
Are weak dependencies also set to do nothing in rawhide?
I see some people are starting to use "Suggests" at least. By 'nothing at all' rpm should just ignore that tag?
Using conditional Suggests: in a spec file breaks 'fedpkg build --target=f21' on a F20 system. It could be a workaround to use --skip-nvr-check cause koji will do the spec validation regardless in the valid target system.
(In reply to Kevin Fenzi from comment #5)
> Are weak dependencies also set to do nothing in rawhide?
I sense a bad or at least misleading wording from myself in comment #3...
Rpm does record Suggests etc in spec into packages if they exist and supports querying them, but beyond that rpm itself does not, and will not, *do* anything at all with the weak dependencies. There is nothing turned off, thats just the way this is intended to be.
> I see some people are starting to use "Suggests" at least. By 'nothing at
> all' rpm should just ignore that tag?
Rpm doesn't care if there are weak dependencies or not, that data is for depsolvers. Yum only supports them to the point of allowing createrepo to collect the data, ie they dont affect depsolving. Dnf, or more precisely libsolv, does consider weak dependencies if they exist. So yum and dnf will give very different results if weak deps are present.
I dont think use of weak dependencies has been sanctioned in Fedora...
(In reply to Panu Matilainen from comment #7)
> I dont think use of weak dependencies has been sanctioned in Fedora...
It's not been, but also it's not been forbidden. There's several packages that are already using it. ;(
I've filed: https://fedorahosted.org/fesco/ticket/1353 with fesco to see if they wish to forbid this use until guidelines/dnf is default.
Thanks for all the info.
(In reply to Kevin Fenzi from comment #9)
> It's not been, but also it's not been forbidden. There's several packages
> that are already using it. ;(
The Changes wiki page (see initial comment of Jaroslav) clearly states the feature "Support for weak dependencies". So I expect an official support in F21. Do I misunderstand something?
IMHO the change page needs to be adjusted to make clear that weak dependencies are simply being added to rpm as a first step to using them down the road when dnf is our default package manager and we have guidelines on them, but that they are not ready for use yet.
https://fedoraproject.org/wiki/Changes/RPM-4.12 already says:
In Detailed Description:
Some of these features require the new version to reach the builders. So actually introducing them in Fedora will take longer that the Fedora 21 release. Nevertheless updating RPM in F21 is the first step to make this happen.
* Policies and guidelines: Packaging policies might need reconsidering in the light of the new options (F22 or even F23 time frame).
Rpm updates have always come with "avoid using new features until FPC guidelines" clause somewhere, because rpm != Fedora, and rpm supporting something does not mean Fedora permits using it. Perhaps the clause is a little bit too much between the lines this time but then I would've expected Fedora packagers to realize they should wait for guidelines like with everything else, instead of having to explicitly list every single thing.
(In reply to Panu Matilainen from comment #12)
> Perhaps the clause is a
> little bit too much between the lines this time but then I would've expected
> Fedora packagers to realize they should wait for guidelines like with
> everything else, instead of having to explicitly list every single thing.
IMHO fedpkg should then error (or at least warn) about unknown tag usage in spec files. That's not the cause for F21 and rawhide cause the NVR check is done via rpm help.
Should I file a RFE for that?
(In reply to Raphael Groner from comment #13)
By that logic you should just delete all Fedora guidelines and file rpm RFE's for enforcing local policies.
Rpm is not your police, AutoQA, rpmlint etc are.
To clarify the above comment: not all packages built on Fedora systems end up in Fedora repositories, not by a long shot.
That Fedora has packaging guidelines and policies for packages IN the Fedora repositories does not mean the rest of the world is bound by such policies or that we should cripple the software to prohibit taking advantage of new features in other circumstances such as with 3rd party repositories (including company/organization internal ones).
This message is a reminder that Fedora 21 Change Checkpoint: 100% Code Complete Deadline (Former Accepted Changes 100% Complete) is on 2014-10-14 .
All Accepted Changes has to be code complete and ready to be validated in the Beta release (optionally by Fedora QA). Required bug state at this point is ON_QA.
As for several System Wide Changes, Beta Change Deadline is a point of contingency plan. All incompleted Changes will be reported to FESCo on 2014-10-15 meeting. In case of any questions, don't hesitate to ask Wrangler (jreznik).
dreamchess-0.2.1-5.1.RC1.fc21 has been submitted as an update for Fedora 21.
"temporarily, disable weak dependencies due to unclear policy"
can be this change considered as done? If yes, I'll move it to ON_QA and update the list of Changes.
Yes, its all done since mid-September when 4.12 final landed in F21.
dreamchess-0.2.1-5.1.RC1.fc21 has been pushed to the Fedora 21 stable repository. If problems still persist, please make note of it in this bug report.