Loading docs/libcurl/ABI +13 −6 Original line number Original line Diff line number Diff line Loading @@ -7,16 +7,16 @@ libcurl's binary interface libcurl's binary interface ABI - Application Binary Interface ABI - Application Binary Interface ---------------------------------- First, allow me to define the word for this context: ABI describes the "ABI" describes the low-level interface between an application program and a low-level interface between an application program and a library. Calling library. Calling conventions, function arguments, return values, struct conventions, function arguments, return values, struct sizes/defines and sizes/defines and more. more. For a longer description, see [Wikipedia has a longer description](http://en.wikipedia.org/wiki/Application_binary_interface) http://en.wikipedia.org/wiki/Application_binary_interface Upgrades Upgrades -------- In the vast majority of all cases, a typical libcurl upgrade does not break In the vast majority of all cases, a typical libcurl upgrade does not break the ABI at all. Your application can remain using libcurl just as before, the ABI at all. Your application can remain using libcurl just as before, Loading @@ -26,11 +26,13 @@ Upgrades it now is defined to work. it now is defined to work. Version Numbers Version Numbers --------------- In libcurl land, you really can't tell by the libcurl version number if that In libcurl land, you really can't tell by the libcurl version number if that libcurl is binary compatible or not with another libcurl version. libcurl is binary compatible or not with another libcurl version. Soname Bumps Soname Bumps ------------ Whenever there are changes done to the library that will cause an ABI Whenever there are changes done to the library that will cause an ABI breakage, that may require your application to get attention or possibly be breakage, that may require your application to get attention or possibly be Loading @@ -43,7 +45,11 @@ Soname Bumps During the first seven years of libcurl releases, there have only been four During the first seven years of libcurl releases, there have only been four ABI breakages. ABI breakages. We are determined to bump the SONAME as rarely as possible. Ideally, we never do it again. Downgrades Downgrades ---------- Going to an older libcurl version from one you're currently using can be a Going to an older libcurl version from one you're currently using can be a tricky thing. Mostly we add features and options to newer libcurls as that tricky thing. Mostly we add features and options to newer libcurls as that Loading @@ -54,6 +60,7 @@ Downgrades soname, and then your application may need to adapt to the modified ABI. soname, and then your application may need to adapt to the modified ABI. History History ------- The previous major library soname number bumps (breaking backwards The previous major library soname number bumps (breaking backwards compatibility) have happened the following times: compatibility) have happened the following times: Loading Loading
docs/libcurl/ABI +13 −6 Original line number Original line Diff line number Diff line Loading @@ -7,16 +7,16 @@ libcurl's binary interface libcurl's binary interface ABI - Application Binary Interface ABI - Application Binary Interface ---------------------------------- First, allow me to define the word for this context: ABI describes the "ABI" describes the low-level interface between an application program and a low-level interface between an application program and a library. Calling library. Calling conventions, function arguments, return values, struct conventions, function arguments, return values, struct sizes/defines and sizes/defines and more. more. For a longer description, see [Wikipedia has a longer description](http://en.wikipedia.org/wiki/Application_binary_interface) http://en.wikipedia.org/wiki/Application_binary_interface Upgrades Upgrades -------- In the vast majority of all cases, a typical libcurl upgrade does not break In the vast majority of all cases, a typical libcurl upgrade does not break the ABI at all. Your application can remain using libcurl just as before, the ABI at all. Your application can remain using libcurl just as before, Loading @@ -26,11 +26,13 @@ Upgrades it now is defined to work. it now is defined to work. Version Numbers Version Numbers --------------- In libcurl land, you really can't tell by the libcurl version number if that In libcurl land, you really can't tell by the libcurl version number if that libcurl is binary compatible or not with another libcurl version. libcurl is binary compatible or not with another libcurl version. Soname Bumps Soname Bumps ------------ Whenever there are changes done to the library that will cause an ABI Whenever there are changes done to the library that will cause an ABI breakage, that may require your application to get attention or possibly be breakage, that may require your application to get attention or possibly be Loading @@ -43,7 +45,11 @@ Soname Bumps During the first seven years of libcurl releases, there have only been four During the first seven years of libcurl releases, there have only been four ABI breakages. ABI breakages. We are determined to bump the SONAME as rarely as possible. Ideally, we never do it again. Downgrades Downgrades ---------- Going to an older libcurl version from one you're currently using can be a Going to an older libcurl version from one you're currently using can be a tricky thing. Mostly we add features and options to newer libcurls as that tricky thing. Mostly we add features and options to newer libcurls as that Loading @@ -54,6 +60,7 @@ Downgrades soname, and then your application may need to adapt to the modified ABI. soname, and then your application may need to adapt to the modified ABI. History History ------- The previous major library soname number bumps (breaking backwards The previous major library soname number bumps (breaking backwards compatibility) have happened the following times: compatibility) have happened the following times: Loading