Skip to content

Commit

Permalink
NEWS: Bring up to date with recent bug fixes.
Browse files Browse the repository at this point in the history
  • Loading branch information
Bryce Harrington committed Sep 18, 2014
1 parent e0c0a67 commit d1fa4d4
Showing 1 changed file with 66 additions and 3 deletions.
69 changes: 66 additions & 3 deletions NEWS
Original file line number Diff line number Diff line change
@@ -1,7 +1,15 @@
Release 1.??.?? (??)
====================
intro text...
Hard to believe it's been over a year since our last release, but it's
not for lack of activity. This release includes contributions of a wide
assortment of bug fixes, build system improvements, warnings cleanups,
codebase refactoring, test suite repairs, and static analysis work.
This release is lighter on features (compared with 1.12.10) but includes
a highly demanded rehaul of our image downscaling functionality, which
solves a serious problem experienced by Inkscape users when shrinking
embedded bitmaps in SVG files.

While not as exciting in terms of new fe

Features
--------
Expand All @@ -11,6 +19,23 @@ Features
when viewing large images on low resolution devices, as firefox and
chromium already do.

Filter generator:
- Single filter, no "reconstruction" and "sample" filter
- Filters for derivative < 1 work
- Fixed IMPULSE and BOX
- Added TENT, CATMULL_ROM, NOTCH. Remove LANZCOS2.
- Renamed CUBIC to MITCHELL

Cairo's filter settings:
- CAIRO_FILTER_GOOD: uses BOX filter for scales less than .75 in
either direction. Uses PIXMAN_FILTER_GOOD (ie BILINEAR) otherwise.
- CAIRO_FILTER_BEST: uses CATMULL filter always. Upscaling more than
2x will produce anti-aliased square pixels, similar to OS/X.
- CAIRO_FILTER_GAUSSIAN: this obsolete value is used to test other
filters. The program must declare and poke the filter into the
static variable ikernel. This should be removed for production
code.

Improve handling of device transformation and scaling, allowing Cairo
to now support scaling at a device level, permitting easier, more
transparent HiDPI support.
Expand All @@ -25,9 +50,17 @@ Features

Reorder font declarations to be in natural order.

Update the Skia backend to build against current Skia (as of June
2014).

Drop Link-Time Optimization (LTO) support from build system. This
seems to have caused much trouble for unclear benefit, and most
distros are reverting or disabling it anyway.


API Changes
-----------

New public functions cairo_surface_set_device_scale and
cairo_surface_get_device_scale are available.

Expand All @@ -38,6 +71,7 @@ Dependency Changes
Cairo now requires glib 2.14 for its gobject helper functions,
and pixman 0.30 for downscaling.


Bug fixes
---------

Expand Down Expand Up @@ -101,9 +135,38 @@ Bug fixes
American rather than British spelling of this word.
https://bugs.freedesktop.org/show_bug.cgi?id=50411

Fix crash in pixman_image_composite32

Fix crash when trying to modify a (const) all-clipped cairo_clip_t
https://bugs.freedesktop.org/show_bug.cgi?id=75819

Add check_composite method to all compositors, to fix crashes in the
test suite.

Fix crash in Firefox when scrolling on certain pages.

Fix memory leaks found by static analysis.

Fix build of any2ppm if fork is not available.

Fix broken build for Qt backend, due to missing libstdc++.

Fix typo in two cairo_uint128 functions. Fixes potential build issues
on systems without a uint128 type.

Fix build when --enable-pdf=no

Fix cache_frozen assertions for Win32 print.

Correctly check for xcb image surface for inplace upload

Fix webkit-based web browser crashes due to empty boxes by skipping
over them when tesselating.

Make pixman, libpng, and zlib paths commandline configurable for win32
builds.

Fix image scale on Win32 when GDI scale is not identity.

Various cleanups and fixes to warnings, documentation, tests, and
build system. Improve error handling and return value checks.
Expand Down Expand Up @@ -518,8 +581,8 @@ cases (such as stroking around a rectangle) and by reducing the number
of edges generated by the general stroker.

As part of the focus on performance, Cairo 1.12 introduces some
antialias hints (NONE,FAST, GOOD, BEST) that are interpolated by the
raserisers to fine tune their performance versus quality. Cairo 1.12
antialias hints (NONE, FAST, GOOD, BEST) that are interpolated by the
rasterisers to fine tune their performance versus quality. Cairo 1.12
also introduces a new observation architecture,
cairo_surface_observer_t, which can be used to analyse the amount of
time consumed by drawing commands and help identify inefficiencies in
Expand Down

0 comments on commit d1fa4d4

Please sign in to comment.