On 02/17/2015 10:22 PM, Ryan Schmidt wrote:

On Feb 17, 2015, at 2:36 PM, Bruce Miller wrote:

Hi all;
  The portfile for LaTeXML (with the help
of mojca and others on this list) now has lines
to the effect:

PortGroup           perl5 1.0
perl5.branches      5.8 5.10 5.12 5.14 5.16 5.18 5.20

and

if {${perl5.major} ne ""} {
    depends_lib-append \
        port:p${perl5.major}-archive-zip \
        port:p${perl5.major}-file-which \
  ...

My understanding is that LaTeXML is thus
ready to run under "any" version of perl5.

But:
(1) the listing under available ports for LaTeXML
  shows dependencies on p5.16-archive-zip, etc.
and
(2) a user reported a problem when trying to install
LaTeXML that it depended on p5.12-archive-zip which was
obsolete, recommending p5.16-archive-zip.

Is the reason for (1) that 5.16 is currently the "default" perl,
and the reason for (2) that that user currently has perl 5.12
installed? (and thus should upgrade to perl 5.16)

Just checking that I understand what's going on;
I'm preparing to make a release 0.8.1 of LaTeXML
and want to get it right...

It sounds like the LaTeXML port builds itself differently (with different 
dependencies) depending on what variant of the perl5 port is installed. Ports 
that change their behavior depending on what other ports are already installed 
is an antipattern. Port builds should always do the same thing, regardless what 
else is already on the user's system. So I don't know why this functionality of 
the perl5 portgroup exists.

A good principle, in principle;
But a common idiom is for an unversioned dependency, or a dependency
with version at least some particular one, so as to avoid having to
continually track all versions in Portfiles (or specfiles, etc).

FWIW: I'm not clever enough with MacPorts to have come up with
that strategy all on my own... but sorry, in any case!

I've opened ticket #46896 (https://trac.macports.org/ticket/46896)
to sort it out, and ultimately to update LaTeXML to 0.8.1.

Thanks;
bruce

_______________________________________________
macports-dev mailing list
[email protected]
https://lists.macosforge.org/mailman/listinfo/macports-dev

Reply via email to