[cairo] [cairo-announce] cairo snapshot 1.9.4 now available

Carl Worth cworth at cworth.org
Thu Oct 15 16:34:18 PDT 2009

A new cairo snapshot 1.9.4 is now available.

This is a slightly more "raw" snapshot than many we've done in the
past. But it's been over 4 months since the last cairo snapshot, and
cairo internals have been shaken up quite a bit since then, (thanks,

We hope that most of the fallout from the big rewrites is over now,
(such as a recent fix to prevent WebKit from misrendering images). But
we are aware that some bugs still remain, (such as issues with images
in PDF output as well as PS and EPS page sizes).

As you encounter any major bugs, please ensure that the bugs are
listed as dependencies of the following tracker bug so that we will be
sure to fix them before the cairo 1.10 release:


And of course, as with all cairo snapshots (as opposed to "releases"),
any API that is new in cairo 1.9 compared to 1.8 is subject to
change. (For example, I'm not totally happy with the
cairo_gl_surface_create functions so they might be changing.)

Please have fun with cairo, everyone!


Where to obtain cairo 1.9.4

    which can be verified with:

    144d80cf01758a0f048b149b4c54aa792e401ae3  cairo-1.9.4.tar.gz

    (signed by Carl Worth)

  Additionally, a git clone of the source tree:

  git clone git://git.cairographics.org/git/cairo

    will include a signed 1.9.4 tag which points to a commit named:

    which can be verified with:
    git verify-tag 1.9.4

    and can be checked out with a command such as:
    git checkout -b build 1.9.4

Changes from cairo 1.9.2 to cairo 1.9.4
Adrian Johnson (28):
      Fix PDF pattern embedding
      PDF: Don't round pattern y location to an integer
      [pdf] Add support for the extra blend modes
      PDF: Fix glyph 0 in toUnicode stream when using user fonts
      PDF: Only Type 3 fonts should include glyph 0 in /ToUnicode
      Ensure Type 3 fonts do not add a .notdef glyph
      Ensure Type 3 fonts do not use the name .notdef in the PS encoding
      PDF: Fix bug when when embedding surfaces
      PDF: Avoid using patterns when painting surfaces with EXTEND_NONE
      PDF: Avoid using patterns when filling a surface with EXTEND_NONE
      Update ref images
      PDF: Reset alpha to 1.0 before painting a surface
      PDF: Flush operators before writing to the PDF stream
      PDF: Ensure operator is selected before painting surface
      Use _WIN32 to check for win32 mutex
      Add WINVER defines to cairo-mutex-impl-privaye.h
      Fix compiler error on cygwin
      Fix compiler warnings in win32-surface
      Make win32 fonts work in EMF files created by win32-printing
      win32-printing: Allow GDI CTM with scale < 1 to be set
      win32-printing: fix meta surface pattern regression caused by bed2701e
      win32-printing: correct the use of the CAIRO_HAS_WIN32_FONT #ifdef
      Add EPS test
      PS: Add DocumentMedia/PageMedia DSC comments
      PS: Use standard page size names for some common sizes
      Fix truetype subset crash
      PDF: Fix regression caused by 1ae5a419
      PDF: Fix regression caused by 1ae5a419

Andrea Canciani (2):
      [quartz] Fix one more compile error
      [quartz] Compile fix for show_glyphs

Behdad Esfahbod (4):
      [utils] Remove unused code
      [build] Fix typo
      [build] Remove bogus warning that we require at least one native font backend
      Set LC_ALL=C instead of LANG=C

Benjamin Otte (11):
      Use new pixman extended blend operators
      [xlib] Add support for new operators
      [xlib] DO_XCOPYAREA and DO_XTILE optimizations break with Window source
      [image] Move setting of is_clear to _create_with_pixman_format()
      [image] Return cairo_bool_t from _pixman_format_to_masks
      [xlib] Handle case in draw_image() where pixman format is not RGB
      [image] Fix masks computation for BGRx format
      [xlib] Handle 24bpp formats during dithering
      [xlib] Set proper bpp when computing format from masks
      [API] Make _cairo_meta_surface_replay() private again
      [test] Add clip-device-offset

Carl Worth (12):
      Increment version to 1.9.3 after the 1.9.2 snapshot.
      Makefile: Fix two typos preventing doc-publish from working
      Add new test: curve-to-as-line-to
      Merge branch 'master' of git.cairographics.org:/git/cairo
      Revert "[spline] Treat a straight spline as degenerate."
      Revert "[path] Convert straight curve-to to line-to"
      Mark curve-to-as-line-to as XFAIL for PS backend.
      NEWS: Update with correct data for 1.9.4 snapshot
      Remove stale references to non-existant reference images.
      Update version to 1.9.4
      Mark in-fill-empty-trapezoid as an XFAIL test.
      Add mising images to REFERENCE_IMAGES list.

Carlos Garcia Campos (17):
      [test] Use poppler_page_render with a transparent surface
      [test] Remove PDF reference images for paint-source-alpha
      [test] Remove PDF reference images for paint-with-alpha
      [test] Remove PDF reference images for scale-source-surface-paint
      [test] Update argb32 pdf reference image for clip-operator
      [test] Update pdf reference image for filter-nearest-offset
      [test] Update pdf reference image for filter-nearest-transformed
      [test] Update pdf reference image for text-transform
      [test] Update argb32 and rgb24 pdf reference image for text-pattern
      [test] Update pdf reference image for surface-pattern
      [test] Update argb32 and rgb24 pdf reference image for mask
      [test] Add pdf reference image for mask-transformed-image
      [test] Add pdf reference image for rotate-image-surface-paint
      [test] Mark all smask tests as XFAIL for pdf
      [test] Update argb32 pdf reference image for trap-clip
      [configure] Bump pixman dependency
      [build] Fix a typo in configure.ac

Chris Wilson (452):
      [gl] Add EGL target
      [boilerplate] Export cairo_boilerplate_get_image_target()
      [boilerplate] Make array of targets const.
      [test] Add cairo-test-trace
      [perf] Mention cairo-perf-compare-backends in the README
      [test] Code review after sleep
      [test] Never, ever, blame a crashing test on external factors.
      [script] Disable compilation of examples
      [trace] Handle wrapping python
      [trace] Strip absolute path off name when profiling
      [surface] Mark cairo_surface_show_page() with begin-modification
      [surface] Give ownership of the snapshot to the snapshotter.
      [util] Disable default build of font-view
      [test] Remove dlmalloc
      [configure] Check for shm_open()
      [test] Disable compilation of cairo-test-trace without shm_open()
      [test] Need SOURCE when copying image data
      [test] Minor tweak to cairo-test-trace
      [configure] Rephrase warning message for disabling core features.
      [trace] Add sticky bit to (system-wide) trace output dir
      Expose _cairo_null_surface_create() via a test surface
      Missing header file for cairo-test-null-surface.
      [region] Add PLT entry for cairo_region_create_rectangles()
      [perf] Report iteration count
      [perf] Report errors during replays
      [cairo] Remove instance of 'return free()'
      [NEWS] Add release notes from 1.8.8
      [clip] Avoid copying region within  _cairo_clip_intersect_region()
      [clip] During _clip() limit the extracted traps to the current clip extents
      [clip] Missing {} (coding style)
      [xlib] Improve GC caching efficacy
      [analysis] Restore nops for the analysis null surface
      [test] Move calls to the getters from out of the innermost loops.
      [scaled-font-subset] Check for matching font-face implementors
      [test] Add the sha1sum of the required fonts
      [scaled-font] Check the MRU font before resolving the implementor
      [svg] Break circular snapshot reference by explicit finish
      [pattern] Add _cairo_pattern_fini_snapshot
      [ft] Substitute twin if there are no fonts
      [trace] Change the threshold at which pixel data is immediately copied
      [script] Report line number
      [perf] Report line of error during trace
      [trace] Prevent a child process from writing to the same file
      [boilerplate] Missing static on pdf user data key.
      [xlib] Remove redundant code to query a xrender_format from a visual
      [test] Experiment with reference targets
      [test] Add group-clip
      [cairo] Offset the current path when pushing/popping groups.
      [test] Add cairo-test-trace to .gitignore
      [test] Fix the image compare
      [perf] Show speedup/slowdownn labels on graph
      [perf] Add a non-build mode to graph
      [perf] Need to version surface types
      [perf] Force rebuild if make fails
      [boilerplate] Implement a reference xlib surface
      [atomic] Silence compiler warnings by defining an intptr_t
      [cairo] Trivial code tidy
      [pdf] Restore original surface size after emitting group mask
      [test] Add group-unaligned
      [test] Remove invalid smask PDF reference images
      [test] Remove broken PDF reference images for push-group
      [ft] Cache the resolved font face
      [perf] Enable the null-backend for trace replays.
      [gstate] Avoid temporary allocation for transformed patterns
      [cairo] Mark cr->status guard as unlikely
      [cairo] Report true error via pattern from cairo_pop_group()
      [script] Use setjmp exception handling during scanning
      [test] Disable fallback16 testing
      [boilerplate] Propagate original error from create_from_png()
      [script] Reuse glyph advance cache over multiple invocations
      [trace] Compile fix for --enable-script
      [script] Enable error handling for recursive scanners
      [test] Timeout support for tests
      [pattern] Mark _cairo_pattern_nil as static
      [test] Only run fallback-resolution for enabled targets
      [ft] Correct reference counting for implementation font face
      [perf] Enable trace directory recursion.
      [xlib] Remove redundant checks for src_picture==None
      [boilerplate] Only include null-test-surface >= cairo-1.9.3
      [perf] Exclude the xlib-reference target from cairo-perf
      [perf] Enable cairo-perf-trace in cairo-perf-diff
      [perf] Unbreak cairo-perf-diff builder
      [perf] Fix use-after-free when retrieving error line number
      [surface] Expose a SURFACE_TYPE_MISMATCH nil object
      [surface] Allocate temporary region on stack
      [test] Record trace to an in-memory meta-surface
      [test-meta] Lazily allocate image
      [test-meta] Initialize image
      [script] Trim some excess verbage
      Export meta-surface
      [script] Insert spaces around '<<' and '>>'
      [script] Add missing include <string.h>
      [trace] Remove a few transient pattern def/undef
      [meta] Copy extents on snapshotting.
      [meta] Cache replays when used as a pattern source
      [surface] Refactor meta-surface clone
      [script] Prototypical binary translator
      [boilerplate] Read whole RGB lines at a time
      [any2ppm] Choose a more appropriate format for the replay content
      [script] Fix the trivial errors running the test suite
      [script] Tidy dict construction for glyphs
      [boilerpate] Move target definition to backends.
      Remove the defunct test-meta surface
      [boilerplate] Add missing header file.
      [test] Rename some structures within cairo-test-trace
      [path] Evaluate is_box && is_region during construction
      [path] Add path watch debugging
      [path] Use cairo_list_t instead of open-coding its own
      [path] Don't include current-point in hash
      [test] Update reference images for gs 8.64
      [test] Sanitise REFERENCE_IMAGES
      [test] Track XFAIL using expected results stored as xfail.png
      [cairo] Remove trailing spaces in comments.
      [script] Extended blend mode support.
      [pdf] Silence copmiler.
      [glitz] Extended blend mode support
      [directfb] Silence compiler warnings.
      [test] Reconstruct REFERENCE_IMAGES
      [perf] Add cairo-traces to .gitignore
      [boilerplate] Add make-...-constructors to .gitignore
      Fix build under distcheck
      [xlib] Enable Render support for the extended PDF operators
      Add OpenVG backend.
      [test] Add a simplified CLEAR test.
      Compile fixes for mingw32.
      Add a jhbuild moduleset.
      [test] Misidentification of XFAIL as NEW
      [test] Fallback to comparing the base image references
      [test] Summarise tests that fail during the preamble.
      [build] Use ${CC} as the default value for CC_FOR_BUILD
      [build] And export CC_FOR_BUILD so that we can actually use it!
      [perf] Search multiple directories for traces
      [perf] Include trace comparison in html output
      [perf] Don't override CAIRO_TRACE_DIR in cairo-perf-diff
      Merge commit 'anholt/gl'
      [gl] Constrain image sources to max texture size
      [gl] Construct a dummy window for the initial context
      [gl] Avoid temporary allocation of pixman trapezoids
      [gl] Remove dead code.
      [gl] Whitespace
      [gl] Use QUADS for drawing fill_rectangles() not TRIFAN
      Merge commit 'anholt/gl-span-renderer'
      [gl] Another whitespace pass.
      [gl] Apply pixel sample bias for spans
      [gl] Add warning about missing hook for XCloseDisplay().
      [gl] Copy font options from image backend.
      [gl] Update reference images
      [NEWS] Add stub for OpenGL.
      [gl] Enable GL backend for cairo-perf-trace
      [vg] Compile fixes for EGL boilerplate
      [perf] Add a simple report printer.
      [gl] Do not use unchecked GL v1.5 features
      [gl] Simplify the common CLEAR of a surface
      Remove clip handling from generic surface layer.
      [drm] Add an accelerated image surface.
      [test] clip representation is no longer surface dependent
      [script] Decompress font sources
      [perf] Compare performance against most recent tag.
      [perf] Specify html file on cmdline instead of redirecting all output
      [scaled-font] Skip empty glyphs
      [scaled-font] cairo_scaled_font_glyph_extents() initialise extents
      [test] Trap SIGFPE
      [test] Fix use of uninitialized widths.
      [test] Extend radial gradients to check r2 < r1
      [xlib] Check workqueue before taking the display mutex
      [script] mark scan_read() inline
      [image] Discard redundant clears
      [boilerplate] Fix compilation against old revisions (as old as 1.9.2!)
      [pdf] Eliminate redundant whole-page clip.
      [script] Fix reference to font source after transferring to mmap
      [spline] Treat a straight spline as degenerate.
      [path] Convert straight curve-to to line-to
      Add a simple rectangle tree (rtree) implementation
      [xlib] Fast-path the likely case of retrieving a known xrender_format
      [test] Overlapping glyphs
      [paginated] Propagate error return during finish.
      [rtree] Merge the common unpin_and_evict_unused() routine
      [xlib] Add a timely reminder to ensure that bugs are properly filed.
      [gl] Switch to using the common rtree implementation.
      [gl] Actually remove the glyph from the rtree on scaled_font_fini
      [test] Add degenerate-curve-to
      [path] Remove the erroneous conversion of a 'zero-length' curve-to
      [test] Add timeouts around finishing and converting surfaces to images.
      [script] Add cvi, cvr, mod
      [test] Wrap yet another call to get_image_surface() inside a timeout.
      [perf] Avoid NULL derefs on broken result files.
      [gl] Unthaw font along contended path.
      [gl] Separate out supported operator check.
      [gl] Move check for vertex buffer support to individual operations.
      [gl] Only unlock the glyph cache when full.
      [gl] Fallback for overlapping glyphs.
      [gl] Render glyphs to an intermediate mask as opposed to falling back.
      [gl] Trim glyphs to surface/clip extents.
      [gl] Disable the EXTEND_REFLECT convertor
      [gl] Replace DrawPixels with TexSubImage
      [gl] Cache texture snapshots.
      [gl] Fixup unbounded regions after spans
      [test] Yet another bug in curve-to as line-to.
      [path] Remove the broken rel-curve-to as line-to
      [path] Fix iter to handle circular list of buffers
      [perf] Add another stroking micro-benchmark
      [perf] Remove the warning about failing to open a directory
      [perf] Check output
      [perf] Correct typo in long-lines.c
      [perf] Fix the asymmetry in long lines
      [perf] Add a single shot long-lines
      [perf] Add a more complex fill, a set of rings
      [perf] Change the order of slowdowns.
      [perf] Print min_ticks in report
      [xlib] Disable extended repeat modes if RENDER < 0.10
      [xlib] Use server-side gradients.
      [boilerplate] Update fallbacks after disabling RENDER
      [boilerplate] Conditionally tweak the xlib surface
      [gl] Return status from _render_glyphs()
      [spans] Emit empty rows.
      Revert "[gl] Fixup unbounded regions after spans"
      [test] Add clip-text
      [test] Add clip-fill.
      [gl] Use scissors rather than allocating a temporary depth buffer.
      Merge branch 'gl-glyph-cache'
      [gl] Refresh clip-operator ref.
      [directfb] Conditionally use DSPF_BGR555
      [boilerplate/test] Convert make-*-constructors to shell
      [configure] Also check for libiberty.h
      [surface] Protect against the user setting a fallback resolution of 0.
      [perf] Calibrate tests to run for at least 2 seconds
      [matrix] Use hypot()
      [path] Extend identical lines.
      [build] Configure switch to disable atomics
      [pattern] Invalid access beyond end of freed-pool
      [perf] Compare drawing random curves
      [trace] Only write the 4 byte length to the stream
      [trace] Whitespace
      [gl] Move hidden cairo_gl_surface_create() proto to header
      [trace] Close the dictionary before font
      [script] Extend csi-replay to show how to use a single surface
      [script] Check for failure to store the glyph cache
      [script] Ensure strings are nul terminated
      [quartz] Attempt to fix compile errors
      [script] Handle translation of compressed strings.
      [scaled-font] Update API documentation
      [quartz] Use the implementation font-face not the associated
      [surface] Check for a NULL snapshot
      [xlib] Rewrite UNSUPPORTED() avoiding gcc-ism
      [qt] Fix compilation
      [test] Exit on first failure '-x'
      [test] Attempt to automatically detect running under gdb
      [test] Remove misleading code/comments from a1-image-sample
      [perf] Add clipped modes to dragon
      [perf] Reset the path after each spiral
      [perf] Add spiral strokes
      [perf] Support objdir!=srcdir in cairo-perf-diff
      [perf] Add a box mode to spiral
      [perf] Fix unaligned-clip
      [perf] Add charting utility
      [perf] Remove cpuset warning for cairo-perf-trace
      [perf] Reset global caches after every trace
      [perf] Match directory names
      [test] Minor tweak of ft-text-vertical-layout
      Eliminate self-intersecting strokes.
      [traps] Compute extents on demand.
      [traps] Increase exponential expansion factor.
      [tessellator] Remove the skiplist for the active edges
      [tessellator] Use a priority queue for the events
      [fallback] Avoid going through traps for trivial regions.
      [clip] Use special-purpose fill_to_region()
      [tessellator] Special case rectilinear tessellation
      [fill] Short-circuit extents on an empty path.
      [clip] Use the rectilinear tessellator
      [freelist] Lazy initialisation of pools
      [fallback] Avoid tessellating empty polygons
      [util] Show total edge length in show-edges
      [polygon] Amalgamate collinear edges
      [test] Stress the intersection handling by feeding spans/traps random curves
      [clip] Eliminate redundant clips
      [gstate] Discard trivial all-clipped regions
      [fill] Early check for empty path/polygon
      [clip] Use geometric clipping for unaligned clips
      [clip] Combine directly onto target
      [slope] Inline _cairo_slope_init()
      [polygon] Return status from path ops
      [fill] Use trivial rectilinear_to_traps
      [debug] Path printer
      [path] Discard redundant line-to
      [path] Eliminate redundant line-to before a close
      [script] Fix list handling during font destruction
      [script] Preserve '{}' whilst translating
      [script] Use a compact representation for horizontal offsets between glyphs
      [pattern] Ignore matrix/filter/extend when comparing solids
      [script] Hide the implicit CLEAR for similar surfaces
      [script] Suppress resetting stroke-style elements after matrix switch
      [script] Store the current stroke matrix
      [script] A little utility to convert a trace into a trace
      [script] Off-by-one in allocation of string length.
      [script] Handle zero-length strings
      [gstate] Convert simple mask() into a paint()
      [trace] Emit an 'index' for an undefined surface
      [clip] Cache intermediate clip masks.
      [stroke] Only mark traps as having intersection if non-empty.
      [trace] Fix emission of similar (track operands)
      [script] Introduce cairo_script_context_t
      [script] Read from a FILE stream
      [script] Wrap snapshot.
      [script] Garbage collect contexts on context switch
      [script] Emit surface content
      [script] Track scaled-font
      [tessellate] Rectangular special case
      [clip] Use the rectangular tessellator to extract boxes
      [build] Add options for warning about bad casts
      [script] recursive active (type3 glyphs)
      Fix errors found by clang
      [script] Correct emission of get_target() for a popped context
      Introduce cairo_tee_surface_t
      Add 'flight-data-recorder' utility.
      [matrix] Improve bbox finding for translation matrix
      [wrapper] Always copy clip
      [meta] Missing status check
      [script] Apply device offset when replaying meta surface
      Add cairo-sphinx utility for regression analysis
      Add xml surface
      [fallback] Reduce paint + clipmask to fill
      [build] Remove -Wcast-align
      [test] Update REFERENCE_IMAGES
      [configure] Choose a better name for the 'temporary' egl iterator
      [win32] Trust the clipping code to trim roi to our surface
      [cairoint.h] Add missing cairo_private to debug prototypes.
      [qt] Discard impossible status return from path construction
      [gl] Use common ARRAY_LENGTH macro
      [gl] Simplify acquire_dest_image()
      [gl] Use spans for trapezois.
      [script] Support running on cairo-1.8
      [pattern] Ensure that no repeated pattern is clipped
      [win32] Compiler warnings
      [win32] Initialize clip_region
      [win32] Use the system scaled_font_done
      [scaled-font] Remove assert from cairo_scled_font_create()
      [script] Conditionalise the build
      [boilerplate] Runtime library check
      [test] Implicit close
      [fallback] Include implicit closes in the check for rectilinear paths
      [path] Handle the implicit close for path_fixed_is_box()
      [stroke] Handle degenerate stroke extents
      [scaled-font] Eliminate intermediate path when tracing glyphs
      [path-fixed] Distinguish cw and ccw boxes
      [test] Add clip-stroke
      [clip] Fix refleak of previous clipping surfaces.
      [scaled-font] Refleak on error path.
      [ft] Improve error path handling.
      [scaled-font] Fix implementation-face refleak
      [path] Return the canonical box.
      [script] Fix use of freed list
      Update reference images
      [script] Implement invert
      [test] Add rotated clip.
      [clip] Pass in destination offset for combining with clip-mask
      [clip] Apply surface offset when combining with clip mask
      [clip] Correctly compute a geometric mask for a rectilinear + arbitrary
      Use the more generic is_box when doing simple extent checks
      Merge branch 'stroke-with-spans'
      [bo-rectangular] Fix assertion failure with insertion sort
      [perf] Trim outliers from chart
      [pattern] Remove unused hidden symbol for cairo_pattern_status()
      [tee] Rename 'append' to 'add' and add symmetric 'remove'
      Compiler warnings
      [path] Standalone header-compilation
      [boilerplate] Use xlib as fallback reference for xcb
      [ps/pdf] Trim patterns to operation extents
      [ps] Clip meta-surface to desired extents.
      Revert "[freelist] Make _cairo_freepool_alloc_from_new_pool static inline."
      [xlib] Make xlib_display_t private and rename xlib_screen_info_t
      [test] Add clip-image
      [xlib] Eliminate GC clipping
      [xlib] Remove stray code
      [boilerplate/test] Use numerical equality not string equality
      [script] Attempt to select a font if ! CAIRO_HAS_FT_FONT
      [script] Always create a fallback font
      [test] Add clip-disjoint
      [polygon] Fix discard with non-banded disjoint clip boxes
      [boilerplate] Handle errors whilst creating GL surface
      [polygon] Compute the limit of the limits slightly more efficiently
      [xlib] solid pictures should only be 1x1
      [gl] Remove reference to depth_stencil_tex
      [gl] Assert that the error is impossible.
      [gl] Allocate small number of rectangles on the stack
      [mutex] Hook into pthread last
      [win32] Remove unused clone_similar()
      [perf] Use milliseconds by default in cairo-perf-diff-files
      [fallback] Only eliminate the clip if the operation is bounded
      [test] Add unbounded variants of clip-{fill,stroke}
      [xlib] Enable pad_reflect by default
      [gl] compile fix.
      [perf] Move the calibration to its own function
      [configure] Add option to disable trace.
      [xlib] Protect ourselves from liars that claim to have a 64k window
      [gl] Supply extents for acquire source image
      [build] Improve handling of missing test apparatus
      [spans] Correct offsets for trapezoids
      [configure] Typo in test
      [twin] Initialise all properties
      [test] Check for errors during ft-show-glyphs-positioning
      [test] Add ANTIALIAS_NONE variation of twin
      [test] Variation of twin with ANTIALIAS_GRAY
      [test] SUBPIXEL_ANTIALIAS varation of twin
      [test] Variation of twin that intermixes antialiasing
      [test] An oversized twin test case.
      [test] Typo in ft-show-glyphs-positioning
      [test] Compare a failure against the image output
      [test] Disable the antialias testing for the vector surfaces.
      [util] Inherit the repository from xorg.modules
      [util] And restore the repository tag.
      [util] And back to a unique repo name for cairo.modules
      [util] And reuse the same name repository name.
      [xlib] Fix extraction of GC during XCloseDisplay()
      [clip] Simplify applying a box clip
      [surface] Early return for (region IN white)
      [test] Update big-line and remove XFAIL
      [xlib] Discard clip if larger than glyph extents
      [xlib] Fix big-line.
      [test] Add Debian packages for fonts
      [test] Typos in README from previous commit
      [configure] --enable-symbol-lookup
      [trace] Compile without lookup-symbol
      [trace] Stray trailing ';' in bswap macros
      [image] Add pixel masks for BGRA formats
      [configure] Fallback to detect OpenGL headers
      Add a private copy of GLEW
      [build] Add a default message for when GLEW isn't built
      [configure] Setup GL CFLAGS before checking for GLX
      [perf] Reorganise cairo-perf
      [xlib] Interim CAIRO_DEBUG variable to specify xrender level
      [xlib] Cleanse creation of similar surfaces.
      [xlib] Trim a few redundant steps when uploading glyphs
      [fallback] Special case single composite rectangle
      [xlib] Fix recent bug in unbounded trapezoids
      [gl] Handle an absent visual.
      [test] Exercise push-group-color.
      [test] Revamp surface-source
      [image] Do assumption initial user data is cleared.
      [image] Tweak coding style
      [image] Do not trust user supplied data to be clear
      [perf] Support parsing reports from stdin
      [tessellator] Invalid conversion of list head to edge.
      [xlib] XRequest bread crumbing
      [xlib] Suppress warning that should never have been.
      [boilerplate/xcb] Check for connection errors during test
      [xcb] Deferred error checking.
      [boilerplate/xcb] Fix pixmap depth
      [pattern] Compute extents for gradients
      [atomic] Fallback to libatomic-ops-dev
      [build] Link against pthread-stubs
      [surface] Avoid double application of device offset when calling fill()

Damian Frank (2):
      Rename cairo-script static func to avoid MinGW conflict
      Fix build on systems with older Xrender headers.

Emmanuel Pacaud (1):
      [SVG] Add extended blend modes.

Eric Anholt (38):
      [gl] Add basics for GL surface backend using test-fallback as base.
      [gl] Replace all-software implementation with all-GL-read/drawpixels.
      [gl] Make create_similar actually create similar instead of image.
      [gl] Add a shortcut from image to gl in clone_similar.
      [gl] Hook up fill_rectangles.
      [gl] clear surfaces to transparent on creation
      [gl] Clamp surface size to a minimum of (1,1) in create_similar.
      [gl] Add support for composite and composite_trapezoids.
      [gl] Fix infinite recursion on compositing A1 images.
      [gl] Fix unantialiased-shapes tests.
      [gl] Add interface for creating surfaces from window backbuffers.
      [gl] Avoid re-binding the same draw buffer.
      [gl] Fix some memory leaks on boilerplate-based runs.
      [gl] Add support for constant color directly, not through a texture.
      [gl] Use textures and not fbo-based surfaces for image surface patterns.
      [gl] Use triangle fan instead of GL_QUADS for the single quad we draw.
      [gl] Use GLEW to detect required extension presence.
      [gl] Make sure test visuals for CAIRO_CONTENT_COLOR_ALPHA have alpha bits.
      [gl] Wire blend factors using dst alpha to constants for CAIRO_CONTENT_COLOR.
      [gl] Don't forget that we require ARB_texture_non_power_of_two currently.
      [gl] Handle PIXMAN_b8g8r8a and PIXMAN_b8g8r8x8 in the image tex shortcut.
      [gl] Use filtering of GL_NEAREST to hint to TexImage not to alloc for mipmaps.
      [gl] Use the span renderer with an image surface temporary.
      [gl] Add HW spans implementation using VBOs and GL_LINES.
      [gl] Use Enable/DisableClientState for arrays for consistency.
      [gl] Use spans directly as geometry instead of rasterizing to a temporary.
      [gl] Fix check-def.sh for GL surface.
      [gl] Fix check-doc-syntax.sh for GL surface.
      [gl] Fix check-plt.sh for the GL surface.
      Merge branch 'gl' into gl-span-renderer
      [gl] Initialize has_alpha in the image surface composite fastpath.
      [gl] Drop use of packed datatypes where it's disallowed.
      Merge commit 'origin/master' into gl
      [gl] Add support for more 16-bit image formats.
      [gl] consolidate the pixman format to GL format/type/internalformat code.
      [gl] Start adding glyph cache support.
      [gl] Switch the glyph cache to using VBOs.
      [gl] Fix handling of clip for glyphs (clip-operator test).

Jeff Muizelaar (3):
      Factor out _cairo_image_surface_span_render_row()
      Use the scanline rasterizer in the win32 backend.
      Add a description of how we compute the spline_error_squared.

M Joonas Pihlaja (59):
      [cairo-surface] Handle the all clipped out case for regions.
      [test] Never use gcc __attribute__ magic for constructors.
      [test] Make test constructors without perl.
      [boilerplate] Check for connect() in libsocket.
      [test/any2ppm] Daemonize without BSD's daemon().
      [test] Fallback to HUGE_VAL in place of INFINITY in invalid-matrix.c.
      [test] Fix checking of the fenv.h include.
      [test/build] Don't test Freetype font stuff without Fontconfig.
      [shave] Robuster usage of the test shell built-in.
      [test] Mark scale-offset tests as XFAIL for image, xlib-fallback.
      [test] Add trap rendered ref images for fill-image.
      Revert "[test] Make the xlib-fallback use the image refs."
      [spans] Squash a compiler warning when creating error objects.
      [build] Require fontconfig >= 2.2.95 if we're using it at all.
      [trace] Compile without fontconfig.
      [script] Include unistd.h if we're twiddling file descriptors.
      [build] Remove a level of quoting from CAIRO_PARSE_VERSION.
      [build] Look for libpng.pc as well when configuring.
      [atomic] Use an integer __sync_val_compare_and_swap() for pointer CAS.
      [test] Fix a typo in the _POSIX_SOURCE version number.
      [test] Fix Makefile.am for Solaris make.
      [spans] Round rasterization grid pixel areas instead of truncating.
      [test] Test extremely small dash lengths.
      [build] Remove duplicate invocation of AC_CHECK_HEADERS.
      [trace] Use HAVE_FLOCKFILE/FUNLOCKFILE since configure test for them.
      [test] Use HAVE_FLOCKFILE instead of _POSIX_C_SOURCE.
      [wrapper] Avoid a void return gccism.
      [freelist] Make _cairo_freepool_alloc_from_new_pool static inline.
      [trace] Get the tracee program name from the environment.
      [NEWS] Thank the AuroraUX team for facilitating Solaris testing.
      [trace] Check for object stack underflow.
      [trace] Don't crash on unknown enums values.
      [trace] Replace an open coded test for matrix identity.
      [trace] Check for __builtin_return_address explicitly.
      [constructors] Guard against being called without any input files.
      [build] Refine the -Wno-attribute test to check our use cases.
      [build] Hush the Solaris compiler about enum abuse.
      [build] Fix typos in prototype warnings.
      [test] Allow tests to XFAIL by putting the cairo_t into an error state.
      [image] Check for out of bounds image surface sizes in constructors.
      [test] Fix the order of random points random-intersections-curves*.
      [test] Add large-source-roi.ref.png to test/Makefile.am
      [test] Reorder dash-infinite-loop to not hit a runaway allocation.
      [boilerplate] Support giving content in CAIRO_TEST_TARGET{,_EXCLUDE}.
      [boilerplate] Support wildcard ? in CAIRO_TEST_TARGET{,_EXCLUDE}.
      [perf] Add a fast-and-sloppy mode to cairo-perf.
      [trace] Avoid warnings from assigning a void pointer to a function pointer.
      [trace] Don't try and propagate a void result.
      [trace] Don't rely on the constructor attribute to initialise the tracer.
      [trace] Make cairo-trace and its symbol-lookup automatically configured.
      [build] Enable building cairo-trace on Solaris.
      [trace] Don't trace internal cairo calls on Solaris.
      [win32] Sync Makefile.win32.features.
      [build] Work around autoconf void* -> VOID__ name conversion bug.
      [build] Check for dlsym in both libdl and libc.
      [trace] Don't use pthread_key_delete.
      [trace] Look harder for the cairo-trace.so library.
      [autoconf] Comment on the SIZEOF_VOID__ -> SIZEOF_VOID_P workaround.
      [build] Check compiler flags using AC_TRY_LINK instead of AC_TRY_COMPILE.

Nis Martensen (2):
      [test] Verify current point position after subpath closure
      [path] Fix missing implicit move-to

Pierre Tardy (1):
      Cross-compilation fix for boilerplate/test

Sebastian Dröge (1):
      Use __uint128_t and __int128_t if available

Søren Sandmann Pedersen (2):
      Reinstate cairo_region_create_rectangles()
      [test] Update reference image for the extended-blend-mode test.

Tobias Hunger (6):
      [qt] Reduce padding in cairo_qt_surface_t struct
      [qt] Move _opstr() inside the #if 0 to avoid warnings
      [qt] Add method to flush qpainter
      [qt] Cleanup some whitespace
      [qt] Remove use of unnecessary QPen pointer
      [qt] Remove use of unnecessary QBrush pointer

Vladimir Vukicevic (2):
      Import Qt backend by Mozilla
      Add skia backend
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: not available
Url : http://lists.cairographics.org/archives/cairo/attachments/20091015/6815a7b2/attachment-0001.pgp 
-------------- next part --------------
cairo-announce mailing list
cairo-announce at lists.cairographics.org

More information about the cairo mailing list