>From Kristian Høgsberg (upstream):

The only ABI/API guarantees provided by poppler are for the glib and qt
bindings.  We can not guarantee any kind of stabilty for the core xpdf API,
since any bugfix or security fix will touch some class and add or remove member
variables.  The problem is that xpdf was never designed with a library / app
split, so we're basically exposing the entire implementation.  This is why we've
chosen to write the wrappers - they provide a minimal, opaque API that we can
control and audit easily.  The xpdf headers are only installed as an option, and
are provided under "use-at-your-own-risk" terms.

What I'll commit to CVS, though, is a change to the poppler-glib.pc file that
will list poppler as a Requires.private dependency so that evince and other apps
using the glib bindings wont be linking directly to a library that break ABI. 
With that it should be possible to bump the libpoppler.so soname without
affecting poppler-glib users, but I'm reluctant to commit to even that. 
Basically any change in the poppler core will affect ABI, so we'd be bumping the
soname with almost every commit.

Oh one more reason for not bumping soname on libpoppler.so abi breakages: since
libtool is braindead and actively defeats clever linking (it expands all
dependencies of a library) I don't want to break poppler-glib user because of an
ABI change in a library they don't use directly.

-- 
evince crashes when highlighting text at line end
https://launchpad.net/bugs/24970

--
desktop-bugs mailing list
desktop-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/desktop-bugs

Reply via email to