Bug 159087

Summary: lang/perl5.14: perl package conflicts with JSON::PP and other modules
Product: Ports & Packages Reporter: Peter <peter>
Component: Individual Port(s)Assignee: freebsd-perl (Nobody) <perl>
Status: Closed FIXED    
Severity: Affects Only Me CC: cs, mat
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
file.diff none

Description Peter 2011-07-21 15:20:09 UTC
I recently upgraded to the lang/perl-5.14 from lang/perl-5.12.
The lang/perl-5.12 in it turn was upgraded from lang/perl-5.8.
I notice that more modules formerly installed from separate ports are included
in that port. This led me to the duplicates of the ports and I deleted them by
mean of my Inclusure utility: 
    http://gitweb.vereshagin.org/inclusure
    https://github.com/petr999/inclusure
Such a ports in question make more disk space used and may lead to the strange
things to happen on the system, at least their files may conflict in the 'man'
and 'bin' directories as shown here with 'converters/p5-JSON-PP' port.
I'm pretty sure  there should be the CONFLICTS added to teh eveery
'lang/perl5.X' port to avoid confusion.

Fix: Put CONFLICTS into the lang/perl5.14/Makefile on those packages:
    $ pkg_info -L perl-5.14.1 | perl -Mstrict -Mautodie -wE 'open my $fh, "<", "/usr/ports/INDEX-7"; my %ports; while(my $line = <$fh>) { chomp $line; $line =~ s/^([^|]+)-[\d\.,_]+\|.*$/$1/g; $ports{ $line } = 1; } close $fh; while(<>) { if( m%/usr/local/lib/perl5/5.14.1/(mach/)?(.+)\.pm$% ) { my $mod = "p5-".($2 =~ s%/%-%gr); if( defined $ports{ $mod } ) { say $mod; } } }'

Patch is supplied.

Patch attached with submission follows:
How-To-Repeat:     # portinstall lang/perl5.12 
    # portinstall converters/p5-JSON-PP
    [..]
    Installing /usr/local/man/man1/json_pp.1
    [..]
    Installing /usr/local/bin/json_pp
    # pkg_delete -fx perl-5 && cd /usr/ports/lang/perl5.14 && make install &&\
    > perl-after-upgrade -f
    # pkg_delete -x p5-JSON-PP
    pkg_delete: '/usr/local/man/man1/json_pp.1.gz' fails original MD5 checksum -
    not deleted.
    pkg_delete: '/usr/local/bin/json_pp' fails original MD5 checksum - not
    deleted.
    pkg_delete: couldn't entirely delete package (perhaps the packing list is
    incorrectly specified?)
Comment 1 Mark Linimon freebsd_committer freebsd_triage 2011-07-21 16:49:55 UTC
Responsible Changed
From-To: freebsd-ports-bugs->skv

Fix synopsis and assign.
Comment 2 Eitan Adler freebsd_committer freebsd_triage 2013-04-22 17:13:44 UTC
Responsible Changed
From-To: skv->freebsd-ports-bugs

skv's ports bit has been taken in for safekeeping
Comment 3 Stefan Walter freebsd_committer freebsd_triage 2013-04-30 13:51:04 UTC
Responsible Changed
From-To: freebsd-ports-bugs->perl

Over to Perl maintainer.
Comment 4 Carlo Strub freebsd_committer freebsd_triage 2014-09-14 10:23:41 UTC
Is this PR still relevant?
Comment 5 Mathieu Arnold freebsd_committer freebsd_triage 2014-09-15 12:20:29 UTC
Was resolved in r281884 on 2011-09-17 09:35:57 +0200.