Binary compatibility report for the ADG library between 0.3.2 and 0.4.0 versions on x86
Test Info
Library Name | ADG |
Version #1 | 0.3.2 |
Version #2 | 0.4.0 |
CPU Type | x86 |
GCC Version | 4.6.1 |
Test Results
Total Header Files | 24 |
Total Shared Libraries | 2 |
Total Symbols / Types | 213 / 155 |
Verdict | Incompatible (11.3%) |
Problem Summary
| Severity | Count |
---|
Added Symbols | - | 29 |
Removed Symbols | High | 23 |
Problems with Data Types | High | 0 |
Medium | 0 |
Low | 2 |
Problems with Symbols | High | 0 |
Medium | 2 |
Low | 1 |
Problems with Constants | Low | 2 |
Added Symbols (29)
adg-entity.h,
libadg-0.4.0.so
adg_entity_point_to_model_pair ( AdgEntity* entity, AdgPoint const* point, AdgPair* pair )
adg_entity_point_to_pair ( AdgEntity* entity, AdgPoint const* point, AdgPair* pair, cairo_t* cr )
adg_entity_point_to_paper_pair ( AdgEntity* entity, AdgPoint const* point, AdgPair* pair )
adg-matrix.h,
libadg-0.4.0.so
adg_matrix_copy ( AdgMatrix* matrix, AdgMatrix const* src )
adg_matrix_init_reflection ( AdgMatrix* matrix, double radians )
adg-point.h,
libadg-0.4.0.so
adg_point_copy ( AdgPoint* point, AdgPoint const* src )
adg_point_dup ( AdgPoint const* point )
adg_point_get_type ( )
adg_point_set ( AdgPoint* point, AdgPair const* model, AdgPair const* paper )
adg_point_unset ( AdgPoint* point )
adg-rotable.h,
libadg-0.4.0.so
adg_rotable_get_angle ( AdgRotable* rotable )
adg_rotable_get_type ( )
adg_rotable_set_angle ( AdgRotable* rotable, gdouble angle )
adg-toy-text.h,
libadg-0.4.0.so
adg_toy_text_get_label ( AdgToyText* toy_text )
adg_toy_text_get_type ( )
adg_toy_text_new ( gchar const* label )
adg_toy_text_set_label ( AdgToyText* toy_text, gchar const* label )
adg-translatable.h,
libadg-0.4.0.so
adg_translatable_get_origin ( AdgTranslatable* translatable, AdgPoint* dest )
adg_translatable_get_type ( )
adg_translatable_set_origin ( AdgTranslatable* translatable, AdgPoint const* origin )
adg_translatable_set_origin_explicit ( AdgTranslatable* translatable, gdouble model_x, gdouble model_y, gdouble paper_x, gdouble paper_y )
cpml-pair.h,
libcpml-0.4.0.so
cpml_pair_transform ( CpmlPair* pair, cairo_matrix_t const* matrix )
cpml-segment.h,
libcpml-0.4.0.so
cpml_segment_copy ( CpmlSegment* segment, CpmlSegment const* src )
cpml_segment_dump ( CpmlSegment const* segment )
cpml_segment_init ( CpmlSegment* segment, cairo_path_t* src )
cpml_segment_next ( CpmlSegment* segment )
cpml_segment_reset ( CpmlSegment* segment )
cpml_segment_reverse ( CpmlSegment* segment )
cpml_segment_transform ( CpmlSegment* segment, cairo_matrix_t const* matrix )
to the top
Removed Symbols (23)
adg-matrix.h,
libadg-0.3.2.so
adg_matrix_set ( AdgMatrix* matrix, AdgMatrix const* src )
adg-path.h,
libadg-0.3.2.so
adg_path_arc ( AdgPath* path, double xc, double yc, double radius, double angle1, double angle2 )
adg_path_arc_negative ( AdgPath* path, double xc, double yc, double radius, double angle1, double angle2 )
adg_path_chain_ymirror ( AdgPath* path )
adg_path_clear ( AdgPath* path )
adg_path_close ( AdgPath* path )
adg_path_curve_to ( AdgPath* path, double x1, double y1, double x2, double y2, double x3, double y3 )
adg_path_get_current_point ( AdgPath* path, double* x, double* y )
adg_path_line_to ( AdgPath* path, double x, double y )
adg_path_move_to ( AdgPath* path, double x, double y )
adg_path_rectangle ( AdgPath* path, double x, double y, double width, double height )
adg_path_rel_curve_to ( AdgPath* path, double dx1, double dy1, double dx2, double dy2, double dx3, double dy3 )
adg_path_rel_line_to ( AdgPath* path, double dx, double dy )
adg_path_rel_move_to ( AdgPath* path, double dx, double dy )
cpml-path.h,
libcpml-0.3.2.so
cpml_path_copy ( CpmlPath* path, CpmlPath const* src )
cpml_path_from_cairo ( CpmlPath* path, cairo_path_t const* src, cairo_t* cr )
cpml_path_from_cairo_explicit ( CpmlPath* path, cairo_path_t const* src, CpmlPair const* org )
cpml_primitive_from_path ( CpmlPath* primitive, CpmlPath const* path, int index )
cpml_primitive_get_pair ( CpmlPath const* primitive, CpmlPair* pair, int index )
cpml_primitive_get_point ( CpmlPath const* primitive, CpmlPair* point, double pos )
cpml_primitive_reverse ( CpmlPath* primitive )
cpml_primitive_set_pair ( CpmlPath* primitive, CpmlPair const* pair, int index )
cpml_segment_from_path ( CpmlPath* segment, CpmlPath const* path, int index )
to the top
Problems with Symbols, Medium Severity (2)
adg-arrow-style.h,
libadg-0.3.2.so
[+] adg_arrow_style_render ( AdgArrowStyle* arrow_style, cairo_t* cr, CpmlPath* segment ) (1)
changed to:adg_arrow_style_render ( AdgArrowStyle* arrow_style, cairo_t* cr, CpmlSegment* segment )
| Change | Effect |
---|
1 | Base type of 3rd parameter segment has been changed from struct _CpmlPath (28 bytes) to struct _CpmlSegment (16 bytes). | This parameter may be incorrectly initialized by applications. |
adg-path.h,
libadg-0.3.2.so
[+] adg_path_new ( void(*create_func)(AdgEntity*, gpointer), gpointer user_data ) (1)
changed to:adg_path_new ( void(*callback)(AdgEntity*, cairo_t*) )
| Change | Effect |
---|
1 | 2nd parameter user_data has been removed from the calling stack. | This parameter will be ignored by the function. |
to the top
Problems with Data Types, Low Severity (2)
adg-arrow-style.h
[+] typedef AdgArrowRenderer (1)
| Change |
Effect |
1 | Base type has been changed from void(*)(AdgArrowStyle*,cairo_t*,CpmlPath*) to void(*)(AdgArrowStyle*,cairo_t*,CpmlSegment*). | Replacement of the base data type may indicate a change in its semantic meaning. |
[+] affected symbols (2)
adg_arrow_style_get_renderer ( AdgArrowStyle* arrow_style )Return value has base type 'AdgArrowRenderer'.
adg_arrow_style_set_renderer ( AdgArrowStyle* arrow_style, void(*renderer)(AdgArrowStyle*, cairo_t*, CpmlPath*) )2nd parameter 'renderer' has type 'AdgArrowRenderer'.
adg-entity.h
[+] typedef AdgCallback (1)
| Change |
Effect |
1 | Base type has been changed from void(*)(AdgEntity*,gpointer) to void(*)(AdgEntity*,cairo_t*). | Replacement of the base data type may indicate a change in its semantic meaning. |
[+] affected symbols (1)
adg_path_new ( void(*create_func)(AdgEntity*, gpointer), gpointer user_data )1st parameter 'create_func' has type 'AdgCallback'.
to the top
Problems with Symbols, Low Severity (1)
adg-path.h,
libadg-0.3.2.so
[+] adg_path_new ( void(*create_func)(AdgEntity*, gpointer), gpointer user_data ) (1)
changed to:adg_path_new ( void(*callback)(AdgEntity*, cairo_t*) )
| Change | Effect |
---|
1 | 1st parameter create_func has been renamed to callback. | Renaming of a parameter may indicate a change in its semantic meaning. |
to the top
Problems with Constants, Low Severity (2)
cpml-path.h
[+] CPML_FIRST
| Change | Effect |
---|
1 | The constant CPML_FIRST with value 1 has been removed. | The value of this constant may no longer be properly handled by new-version library functions. |
[+] CPML_LAST
| Change | Effect |
---|
1 | The constant CPML_LAST with value 0 has been removed. | The value of this constant may no longer be properly handled by new-version library functions. |
to the top
Header Files (24)
adg-adim.h
adg-arrow-style.h
adg-canvas.h
adg-container.h
adg-context.h
adg-dim-style.h
adg-dim.h
adg-entity.h
adg-enums.h
adg-font-style.h
adg-ldim.h
adg-line-style.h
adg-matrix.h
adg-model.h
adg-pair.h
adg-path.h
adg-pattern.h
adg-style.h
adg-type-builtins.h
adg-util.h
adg.h
cpml-pair.h
cpml-path.h
cpml.h
to the top
Shared Libraries (2)
libadg-0.3.2.so
libcpml-0.3.2.so
to the top