Bug 47895

Summary: Index of new symbols is incomplete
Product: cairo Reporter: Uli Schlachter <psychon>
Component: generalAssignee: Carl Worth <cworth>
Status: RESOLVED FIXED QA Contact: cairo-bugs mailing list <cairo-bugs>
Severity: minor    
Priority: medium    
Version: 1.12.0   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: Add cairo-raster-source section to manual
do not use / in xlib/xrender section title
add missing sections

Description Uli Schlachter 2012-03-26 05:25:28 UTC
I noticed that cairo_pattern_create_raster_source() is missing from the "Index of new symbols in 1.12". 
Other symbols are missing, too, e.g. all of cairo_raster_source_pattern_* and all of the new xcb symbols (CAIRO_HAS_XCB_SURFACE, cairo_xcb_surface_set_drawable()).

Anyone has an idea how to systematically check which symbols aren't properly recognized by gtk-doc as new?
Comment 1 Uli Schlachter 2012-03-26 06:45:16 UTC
I diff'd the exported symbols from debian's cairo 1.10 and my local git clone. The following function symbols are definitely missing (no idea about preprocessor macros):

cairo_device_observer_elapsed
cairo_device_observer_fill_elapsed
cairo_device_observer_glyphs_elapsed
cairo_device_observer_mask_elapsed
cairo_device_observer_paint_elapsed
cairo_device_observer_print
cairo_device_observer_stroke_elapsed
cairo_ft_font_face_get_synthesize
cairo_ft_font_face_set_synthesize
cairo_ft_font_face_unset_synthesize
cairo_pattern_create_raster_source
cairo_raster_source_pattern_get_acquire
cairo_raster_source_pattern_get_callback_data
cairo_raster_source_pattern_get_copy
cairo_raster_source_pattern_get_finish
cairo_raster_source_pattern_get_snapshot
cairo_raster_source_pattern_set_acquire
cairo_raster_source_pattern_set_callback_data
cairo_raster_source_pattern_set_copy
cairo_raster_source_pattern_set_finish
cairo_raster_source_pattern_set_snapshot
cairo_recording_surface_get_extents
cairo_surface_create_observer
cairo_surface_observer_add_fill_callback
cairo_surface_observer_add_finish_callback
cairo_surface_observer_add_flush_callback
cairo_surface_observer_add_glyphs_callback
cairo_surface_observer_add_mask_callback
cairo_surface_observer_add_paint_callback
cairo_surface_observer_add_stroke_callback
cairo_surface_observer_elapsed
cairo_surface_observer_print
cairo_surface_supports_mime_type
cairo_xcb_device_debug_get_precision
cairo_xcb_device_debug_set_precision
cairo_xcb_device_get_connection
cairo_xcb_surface_set_drawable
cairo_xlib_device_debug_cap_xrender_version
cairo_xlib_device_debug_get_precision
cairo_xlib_device_debug_set_precision

Most of these (e.g. cairo_surface_create_observer()) are marked as "Since: 1.12" in the source code, but are still missing from the list of new symbols. The observer API is undocumented and thus can't be marked as "Since: 1.12" yet, so that explains at least half of the missing functions.
Comment 2 Nis Martensen 2012-04-12 14:06:39 UTC
Created attachment 59875 [details] [review]
Add cairo-raster-source section to manual

Part of this is addressed by

commit c04f5a353f0b05326915f370b05480eeda27ebac
Author: Nis Martensen <nis.martensen@web.de>
Date:   Sun Mar 11 00:36:58 2012 +0100

    add unused symbols to sections doc
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>


The cairo-raster-source symbols need another patch to show up in the docs. Attaching.
Comment 3 Nis Martensen 2012-04-13 11:57:44 UTC
Created attachment 59933 [details] [review]
do not use / in xlib/xrender section title
Comment 4 Nis Martensen 2012-04-13 11:59:04 UTC
Created attachment 59935 [details] [review]
add missing sections

cairo-raster-source is not the only missing section.
Comment 5 Uli Schlachter 2012-04-16 13:00:44 UTC
Both patches pushed, commits 905a88bf517bdc1b110587551ea7f1739bd90627 and 80d1e68bb31be030f8102f28545bb622fa2050d8.

Should that fix this bug? The only missing symbols which I can still think off are the cairo_*_observer_* ones since those are undocumented.
Comment 6 Nis Martensen 2012-04-16 13:25:21 UTC
I think that would be a different bug.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.