[Cairo] Cairo API change: cairo_get_* -> cairo_current_*
Carl Worth
cworth at east.isi.edu
Thu Sep 4 16:37:35 PDT 2003
On Sep 4, Keith Packard wrote:
> > I might suggest simply breaking stuff and letting people fix.
> > Cairo isn't mature enough yet to clutter the source code with
> > fancy ways of doing deprecation, IMHO.
Owen, you got me thinking and I realized my initial approach was
exactly backwards with its priorities. Here's what I think now:
There is never any benefit to breaking binary compatibility if easily
avoided.
There is a definite advantage to breaking source-level compatibility
to steer new development away from the deprecated APIs.
So I've changed the DEPRECATED macros to do exactly that. So using the
old APIs will now give a link error on all platforms. But, to ease
things, the error will provide both the old and new function names,
ala:
cairo_get_status_DEPRECATED_BY_cairo_status
And, of course, the cairo-api-update script will also solve things.
> I'd suggest that the 1.0 release be accompanied by an elimination of the
> deprecated functions so that we start clean at that point.
Absolutely. And we can follow a similar pattern in the future with the
development "releases" prior to a release that breaks backward
compatibility.
-Carl
More information about the cairo
mailing list