I don't think 2.1.25 bumped SONAME, so the bug still applies. 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 >>> >