[smokeping-users] Embedded modules?
Terje Bless
link at pobox.com
Fri Jun 8 06:47:17 CEST 2007
tobi at oetiker.ch (Tobias Oetiker) wrote:
>>any particular reason why SmokePing embeds SNMP_Session? Config::Grammar?
>
>I like to keep my dependencies small whereever possible, these two modules
>do not take much space, and in this way I am sure things work the same
>everywhere ...
>
>>Any particular reason why it doesn't place them in the Smokeping::
>>application private namespace?
>
>the modules are not part of smokeping, these are thirdparty modules
Hmm. Any chance I'd be able to persuade you on either of those points?
The embedded modules are problematic in terms of, say, a
security update to SNMP_Session where patching the system
version of the module will not catch Smokeping's embedded version.
I also note there are differences between your versions and
upstream which makes trying to work around this (by dropping the
embedded versions in the RPM) a more risky proposition.
Also, for a distribution packaging system like Fedora's (the
policy parts as well as the purely technical bits), having these
private versions is non-optimal for the reasons above and
because of the namespace clashes.
I can work around it, probably by removing the embedded versions
at RPM %install time, but it'll make for rather more grotty code
than I'd hoped; and in light of the diff from upstream, it'll be
quite a lot more packaging overhead than I'm entirely happy about.
Either dropping the embedded versions or moving them into the
Smokeping:: namespace would make this much easier here (with the
former being the much preferred path).
You wouldn't happen to know off hand whether the differences
from upstream for these two modules are significant? If I were
to filter them out in the RPM and replace them with an RPM-level
dependency on the upstream modules, would this impact
Smokeping's use of these modules?
I just quickly checked diff to see whether there were any
changes — so I'm a bit fuzzy on the details — but the one
difference I do recall seemed to be a tweaked regex in the
module guts which should not affect Smokeping's ability to use
the upstream version of the module.
Oh, and if you (or anyone on the list) happen to know; do any
external code use any of the packages in the Smokeping:: namespace?
I'm inclined to filter the RPM “Provides” so it'll list
'smokeping' (i.e. the program) and not any of the 'Smokeping::*'
modules. That's the sane option if those modules are only used
internally by Smokeping, but will probably not be sufficient if
any external code has a 'use Smokeping::Foo'.
>see http://sepp.oetiker.ch
Ah, that explains it. Thanks.
I'll have to patch this at RPM %install time, as Gentoo does for
their Portage version of the Smokeping package, but that should
be manageable (if slightly ugly).
--
“Hath no man's dagger here a point for me?” - Leonato,
Governor of Messina.
See Project Gutenberg
<URL:http://promo.net/pg/> for more.
More information about the smokeping-users
mailing list