Date: Sat, 21 Oct 2023 21:12:28 -0700 From: Kevin Oberman <rkoberman@gmail.com> To: Tatsuki Makino <tatsuki_makino@hotmail.com> Cc: "freebsd-ports@FreeBSD.org" <freebsd-ports@freebsd.org> Subject: Re: lang/perl5.36: update procedure written in UPDATING is not enough Message-ID: <CAN6yY1tNv5NfORn=25WzxpzesmukubE4D1n_jXjDMaBP=yHO0A@mail.gmail.com> In-Reply-To: <SI2PR01MB5036F4F881FCB6005E220CCCFADAA@SI2PR01MB5036.apcprd01.prod.exchangelabs.com> References: <202310211305.39LD5Qt8086896@nuc.oldach.net> <SI2PR01MB5036F4F881FCB6005E220CCCFADAA@SI2PR01MB5036.apcprd01.prod.exchangelabs.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--00000000000047d22c06084651e8 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sat, Oct 21, 2023 at 5:10=E2=80=AFPM Tatsuki Makino <tatsuki_makino@hotm= ail.com> wrote: > Helge Oldach wrote on 2023/10/21 14:49: > > portupgrade -f `pkg query %ro-%rv lang/perl5.28` > > In the case of portmaster, it is portmaster -r perl5- . > Reinstalling everything listed in `pkg info -q -r perl5` like this is > overkill. > Perhaps that is why the method that used to be "portmaster -r perl5-" > (20141126) is now using "portmaster -f `pkg shlib -qR libperl.so.5.26`". > > Most of *.pm files installed in /usr/local/lib/perl5/site_perl/mach/5.36/ > use DynaLoader, so most ports that install it have a library linked to > libperl.so.5.36. > So, those ports are targeted for updating as per the procedure. > > Ports that are not targeted for updating in this procedure, but need to b= e > reinstalled, seem to create a file named .packlist in > /usr/local/lib/perl5/site_perl/mach/5.36/ directory. > Port like p5-Text-CSV-2.03 (textproc/p5-Text-CSV) is such ports. > > Reinstalling all p5-* ports is slight but overkill. > Port like p5-SGMLSpm-1.03_2 (textproc/p5-SGMLSpm) is such ports. > It doesn't seem to have a file that involves the old version number. > The only reason it doesn't have a .packlist could be because it hasn't > been reinstalled in a long time :) > > Since perl scripts are byte-compiled and then executed, there should be n= o > problem if a file in a running script is replaced. > The new file will be used from the next run. > > Regards. > I think portmaster has a bug. As per the man page, the behavior of '-f' matches the behavior of '-R -f". Actually, I'm unclear on what the purpose '-f' is. If you run portmaster with no options on a port that is up to date, it still reinstalls it and has for a very long time, maybe always. --=20 Kevin Oberman, Part time kid herder and retired Network Engineer E-mail: rkoberman@gmail.com PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683 --00000000000047d22c06084651e8 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div dir=3D"ltr"><div class=3D"gmail_default" style=3D"fon= t-family:tahoma,sans-serif;font-size:small">On Sat, Oct 21, 2023 at 5:10=E2= =80=AFPM Tatsuki Makino <<a href=3D"mailto:tatsuki_makino@hotmail.com">t= atsuki_makino@hotmail.com</a>> wrote:</div></div><div class=3D"gmail_quo= te"><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bor= der-left:1px solid rgb(204,204,204);padding-left:1ex">Helge Oldach wrote on= 2023/10/21 14:49:<br> > portupgrade -f `pkg query %ro-%rv lang/perl5.28`<br> <br> In the case of portmaster, it is portmaster -r perl5- .<br> Reinstalling everything listed in `pkg info -q -r perl5` like this is overk= ill.<br> Perhaps that is why the method that used to be "portmaster -r perl5-&q= uot; (20141126) is now using "portmaster -f `pkg shlib -qR libperl.so.= 5.26`".<br> <br> Most of *.pm files installed in /usr/local/lib/perl5/site_perl/mach/5.36/ u= se DynaLoader, so most ports that install it have a library linked to libpe= rl.so.5.36.<br> So, those ports are targeted for updating as per the procedure.<br> <br> Ports that are not targeted for updating in this procedure, but need to be = reinstalled, seem to create a file named .packlist in /usr/local/lib/perl5/= site_perl/mach/5.36/ directory.<br> Port like p5-Text-CSV-2.03 (textproc/p5-Text-CSV) is such ports.<br> <br> Reinstalling all p5-* ports is slight but overkill.<br> Port like p5-SGMLSpm-1.03_2 (textproc/p5-SGMLSpm) is such ports.<br> It doesn't seem to have a file that involves the old version number.<br= > The only reason it doesn't have a .packlist could be because it hasn= 9;t been reinstalled in a long time :)<br> <br> Since perl scripts are byte-compiled and then executed, there should be no = problem if a file in a running script is replaced.<br> The new file will be used from the next run.<br> <br> Regards.<br></blockquote><div><br></div><div style=3D"font-family:tahoma,sa= ns-serif;font-size:small" class=3D"gmail_default">I think portmaster has a = bug. As per the man page, the behavior of '-f' matches the behavior= of '-R -f".=C2=A0 Actually, I'm unclear on what the purpose &= #39;-f' is. If you run portmaster with no options on a port that is up = to date, it still reinstalls it and has for a very long time, maybe always.= <br></div></div><br clear=3D"all"><br><span class=3D"gmail_signature_prefix= ">-- </span><br><div dir=3D"ltr" class=3D"gmail_signature"><div dir=3D"ltr"= ><div><div dir=3D"ltr"><div><div dir=3D"ltr"><div><div dir=3D"ltr">Kevin Ob= erman, Part time kid herder and retired Network Engineer<br>E-mail: <a href= =3D"mailto:rkoberman@gmail.com" target=3D"_blank">rkoberman@gmail.com</a><b= r></div><div>PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683</div= ></div></div></div></div></div></div></div></div> --00000000000047d22c06084651e8--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAN6yY1tNv5NfORn=25WzxpzesmukubE4D1n_jXjDMaBP=yHO0A>