Opened 3 years ago

Closed 2 years ago

#56122 closed defect (fixed)

munin fails to upgrade to 1.4.7_6

Reported by: pdvnl Owned by: raimue (Rainer Müller)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: munin@…
Port: munin

Description

we have been running munin-node for years our macs. now it is outdated, but port upgrade outdated fails

Can't locate MasterBuilder.pm in @INC

while the module exists in

/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_net_munin/munin/work/munin-1.4.7/master/MasterBuilder.pm

port munin has no maintainer

note: the current stable version of munin on munin-monitoring.org is 2.0.35, not 1.4.7.

Attachments (8)

main.log (135.5 KB) - added by pdvnl 3 years ago.
pdv-patch-perl5.24-perl5.26 (1.2 KB) - added by pdvnl 3 years ago.
patch to include current dir in @INC
Portfile (7.4 KB) - added by pdvnl 3 years ago.
Portfile with new patch
Portfile-diff (607 bytes) - added by pdvnl 2 years ago.
unified diff por portfile
pdv-patch-build-plugins (203 bytes) - added by pdvnl 2 years ago.
pdv-patch-build-node (194 bytes) - added by pdvnl 2 years ago.
pdv-patch-build-common (218 bytes) - added by pdvnl 2 years ago.
pdv-patch-build-master (200 bytes) - added by pdvnl 2 years ago.

Download all attachments as: .zip

Change History (15)

Changed 3 years ago by pdvnl

Attachment: main.log added

comment:1 Changed 3 years ago by mf2k (Frank Schima)

Keywords: perl module missing @INC removed

comment:2 Changed 3 years ago by raimue (Rainer Müller)

It is most likely broken due to perl5.26 and the removal of "." from @INC by default, therefore it is no longer able to find this module. This can often be fixed with -I. on the perl command line or use lib '.'; in Makefile.PL for modules.

The munin port is very outdated and is waiting to be adopted by a new maintainer for a long time, see #36860.

Changed 3 years ago by pdvnl

Attachment: pdv-patch-perl5.24-perl5.26 added

patch to include current dir in @INC

Changed 3 years ago by pdvnl

Attachment: Portfile added

Portfile with new patch

comment:3 Changed 3 years ago by pdvnl

Change from 1.4.7_5 to 1.4.7_6 is only the change from perl5.24 to perl5.26.

As stated in [perldelta] for perl 5.26:

"The perl binary includes a default set of paths in @INC . Historically it has also included the current directory ("." ) as the final entry, unless run with taint mode enabled (perl -T ). While convenient, this has security implications: for example, where a script attempts to load an optional module when its current directory is untrusted (such as /tmp), it could load and execute code from under that directory."

Because this change is motivated by security, I think the way to go is updating the source.

I supply a patch and a new Portfile.

comment:4 Changed 3 years ago by raimue (Rainer Müller)

Owner: set to raimue
Resolution: fixed
Status: newclosed

In 1db050c8853b8dcf0a9e72f8a6565ea29fecd1b8/macports-ports:

munin: Fix build with perl5.26

Closes: #56122

comment:5 Changed 3 years ago by raimue (Rainer Müller)

We would generally prefer to get unified diffs for changes to the Portfile, as they are easier to review.

As seen above, I applied this fix to the munin port. I had to strip one level of leading directory names, though. I also renamed it to match the naming of the other patches.

Thank you for your contribution!

Changed 2 years ago by pdvnl

Attachment: Portfile-diff added

unified diff por portfile

Changed 2 years ago by pdvnl

Attachment: pdv-patch-build-plugins added

Changed 2 years ago by pdvnl

Attachment: pdv-patch-build-node added

Changed 2 years ago by pdvnl

Attachment: pdv-patch-build-common added

Changed 2 years ago by pdvnl

Attachment: pdv-patch-build-master added

comment:6 Changed 2 years ago by pdvnl

Resolution: fixed
Status: closedreopened

oops my mistake: missing patches

added files:

  • unified diff for Portfile
  • the 4 new patches

comment:7 Changed 2 years ago by raimue (Rainer Müller)

Resolution: fixed
Status: reopenedclosed

My last comment was just meant for the future. I already committed the previously provided patch, so this is fixed.

Note: See TracTickets for help on using tickets.