On 29/05/2012 16:11, Ondřej Surý wrote:
I don't think 2.1.25 bumped SONAME, so the bug still applies.
Please explain what "bumping SONAME" means. I've asked Ken and neither
of us understands.
As for the #defines - they are related to API (e.g. compile time), but already
compiled programs linked against cyrus-sasl (e.g. runtime) will experience the
breakage.
Ondřej Surý
On 29. 5. 2012, at 16:57, Alexey Melnikov<alexey.melni...@isode.com> wrote:
On 29/05/2012 15:54, Ondřej Surý wrote:
Just quick reply from my phone.
No additional breakage, I just opened the bug after some longer time and didn't
realize it applies to 2.1.24.
Ok, please double check. I will do 2.1.26 anyway, but it would be good to close
the bug if it no longer applies.
Ondřej Surý
On 29. 5. 2012, at 16:46, Alexey Melnikov<alexey.melni...@isode.com> wrote:
On 29/05/2012 15:15, Ondřej Surý wrote:
Hi,
Hi Ondřej,
Coincidentally I just started discussing your bug with Ken 15 mins ago.
[speaking about: https://bugzilla.cyrusimap.org/show_bug.cgi?id=3692]
is there a timeframe for releasing 2.1.26?
The ABI change should have changed and this is causing some havoc in
OpenLDAP runtimes, thus it would be really nice to have fixed version
with bumped SONAME. I don't want to bump SONAME solely in Debian
package since it would break compatibility across the ecosystems, but
we are discussing doing that even though it will create some problems
later.
So it would be really nice if you could just release 2.1.26 or
2.1.25.1 (whatever suits you) with bumped SONAME.
Reading the bug you submitted (and references), it looks like the original
problem was against 2.1.24. 2.1.25 was released since then.
Was there another instance of an incompatible ABI change since then?
--------
As far as changing ABIs (or adding new APIs) is concerned:
In saslplug.h:
#define SASL_UTILS_VERSION 5
is bumped when sasl_utils structure is changed incompatibly (e.g. addition of new struct
members which will grow the struct size. Changing a "spare_XXX" doesn't count,
as long as such members are optional).
#define SASL_CLIENT_PLUG_VERSION 4
is bumped when the "struct sasl_client_plug" or related functions change.
#define SASL_SERVER_PLUG_VERSION 5
is bumped when "struct sasl_server_plug" or related functions change.
#define SASL_CANONUSER_PLUG_VERSION 5
is bumped when "struct sasl_canonuser" or related functions change.
#define SASL_AUXPROP_PLUG_VERSION 9
Is bumped on any auxprop_* API changes. I have updated this version when I
changed auxprop_lookup.
And then there is the version number in sasl.h, which should change when
there are any other semantics changes or changes to APIs (including addition
of new functions).
--------
As far as 2.1.26 is concerned. I've started on it now. There are a couple of
blocker bugs that I would like to resolve (1 of them is under control and just
needs testing). If I am lucky, this will take about 2 weeks to wrap up.
Best Regards,
Alexey