#559 Ban use of rich dependencies
Closed: accepted 6 years ago Opened 8 years ago by tibbs.

Just finished talking with the DNF team manager, who suggested that we go ahead and add a ban on the use of rich dependencies to the guidelines. This isn't about weak deps; it's the new Requires: (pkg-a OR pkg-b) syntax which hasnt actually been finalized. The ways this could break our infrastructure haven't even been investigated yet so we want to make sure nobody thinks they can use them, even though rpm and libsolv in F23 will recognize the syntax.

Will cook up a diff later.


We discussed this at this weeks meeting (http://meetbot.fedoraproject.org/fedora-meeting-1/2015-08-20/fpc.2015-08-20-16.00.txt):

  • 559 Ban use of rich dependencies (geppetto, 17:21:15)

  • LINK: https://fedorahosted.org/fpc/ticket/559 (geppetto, 17:21:16)
  • ACTION: Ban use of rich dependencies (+1:5, 0:0, -1:0) (geppetto,
    17:32:29)

...there was no draft here, do we just accept it or put something somewhere?

But the arguments from that August meeting are already obsolete:
The syntax appears to be finalized now: http://www.rpm.org/wiki/PackagerDocs/BooleanDependencies describes only the lowercase textual syntax now.
Koji now uses DNF for Rawhide builds, so build system support for Rawhide builds is now there.

So IMHO it is now time to revisit this decision, at least for the current Rawhide (i.e., F24+).

Fedora admin folks tells me that things are not yet ready. That's going to override what anyone else says at this point. They will let me know when things are ready, and then I will change the text.

It appears to be pretty obvious why we need the prohibition now. In the current situation the builds might succeed on some builders and not on others, and obviously some people think things are ready when they aren't.

Metadata Update from @tibbs:
- Issue assigned to tibbs

7 years ago

So, after 2 years, let's reopen this.

Previously, mash was used for updates repos, which would have made things crash.
However, as of today, Bodhi is using Pungi, with DNF as backend, to generate updates repositories.

All this means that, as of today, Infra should be all good to handle Rich Dependencies.

Metadata Update from @puiterwijk:
- Issue status updated to: Open (was: Closed)

6 years ago

I will soon remove the section which bans these, but I want to be absolutely certain that rich deps are OK to use in all live Fedora releases and not just rawhide or >= F27 or something.

Confirmed on IRC (#fedora-releng) that this applies for all Fedora releases. As far as releng is concerned, it would be fine in EPEL as well, but I doubt either yum or rpm would be happy there.

Metadata Update from @tibbs:
- Issue tagged with: writeup

6 years ago

@tibbs neither YUM nor RPM in EL6/EL7 support rich deps AFAIK, so one would write a note in packaging guidelines for EPEL.

Announcement text:

Rich (or Boolean) dependencies are now supported throughout Fedora's packaging infrastructure and can now be used freely on all Fedora releases.

Metadata Update from @tibbs:
- Issue untagged with: writeup
- Issue tagged with: announce

6 years ago

We discussed this at this weeks meeting (https://meetbot-raw.fedoraproject.org/fedora-meeting-1/2017-10-26/fpc.2017-10-26-16.00.txt):

  • x559 Ban use of rich dependencies (geppetto, 16:20:22)
  • ACTION: Allow rich deps. now infra. can handle them (+1:5, 0:0,
    -1:0) (geppetto, 16:24:37)

Metadata Update from @james:
- Issue untagged with: announce

6 years ago

Metadata Update from @tibbs:
- Issue close_status updated to: accepted
- Issue status updated to: Closed (was: Open)

6 years ago

Login to comment on this ticket.

Metadata