Deprecating port list

Rainer Müller raimue at macports.org
Thu Mar 12 12:08:53 PDT 2009


Jeremy Lavergne wrote:
> I wouldn't expect any logic operations to actually take place in the  
> examples above.  I'd expect it to do the command on each one  
> independently.  When it comes across depends:expat (or something else  
> that's a "reserved" name, I would expect it to function according to  
> what the command is, and apply it to the following ports.

No, you completely misunderstand pseudo-ports.

This is not meant as a modifier for following ports (how would you unset
the modifier?), but as a selector. A pseudo-port like depends:expat is
replaced by a set of ports. In this case, all ports depending on expat
will be listed there.

You combine sets of ports using logical operators "and", "or", "not",
"!", "(" and ")".

If you are interested in all the python modules being unmaintained you
could do a query like:
  port echo maintainer:nomaintainer and \( py-* py25-* py26-* \)

And it is even possible to find all python modules with either no
maintainer or having openmaintainer set:
  port echo \( maintainer:nomaintainer maintainer:openmaintainer \) \
  and \( py-* py25-* py26-* \)

You can't do such things with simple modifiers you proposed and they
work for any port command accepting a list of ports, that is such a port
expression.

This is very powerful, but you don't have to use it. It is still easy
and intuitive to give a simple list of port names to a port command.

Rainer


More information about the macports-dev mailing list