On Sat, 22 Aug 2015, Thomas D. wrote:
Hi,
David Lang wrote:
Would be nice if you could ping me just *before* liblognorm-2 release so
I can verify proper SONAMEs... Thanks!
right now, the v2-experimental branch creates the liblognorm.so.3.0.0
I think this is incorect, but I'm not sure what is correct. While I could go
research it, I'm going to be a little lazy and explain things to you and rely on
your expertise :-)
this library is backwards compatible, so if you link it to liblognorm.so.2.0.0
everything works.
If your statement is correct and liblognorm-2 will be 100% backward
compatible and only adds *new* new public APIs then yes, SONAME can stay
at 2.x. In this case something like liblognorm.so.2.1.0 would be
recommended (based on the assumption that the latest liblognorm-1 SONAME
was liblognorm.so.2.0.0).
But the fact that liblognorm-1.1.2 doesn't work with rsyslog-8.9+
indicates that it isn't 100% backward compatible.
Same like the thing with "ln_loadSample()"
(https://github.com/rsyslog/liblognorm/issues/126#issuecomment-133463477).
And don't forget your posting regarding the gotcha with the added
multiline support in liblognorm-2
(http://lists.adiscon.net/pipermail/rsyslog/2015-August/041007.html).
That change maybe don't affect a public API but if a function now
behaves different that doesn't sound like a 100% backward release (to be
precise it looks like liblognorm-1.1.2's SONAME should have caused a
break but it hasn't so this is a bug which should be addressed with the
next release -> v2).
I think we may have a fix for this line continuation thing, consider it an error
if the new line starts with 'rule=' and start a new rule.
PS: Why do you care so much about the changed SONAME in liblognorm-2?
Just interested in doing things the right way or is it causing problems
for you? If it is just annoying to patch/recompile consumers like
rsyslog while using the git version to help development please see my
comment in issue #126 where I recommend to bump SONAME only with the
release, which would allow people like you to use existing applications
without the need to patch/adapt the new SONAME while testing.
two things
1. I have never fully understood the soname rules, I know there is some oddity
with them and want to make sure we do the right thing.
2. I think that keeping libraries backwards compatible is a valuable thing to do
whenever possible and the fact that so few library wrutiers do so is a major
problem with Linux nowdays. It's less of a problem if liblognorm1 and
liblognorm2 can both be installed at the same time, but it's still far better if
the new version can support the software written for the old version.
David Lang
_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/
What's up with rsyslog? Follow https://twitter.com/rgerhards
NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of
sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T LIKE
THAT.