[librsvg] Created tag 2.41.0



The signed tag '2.41.0' was created.

Tagger: Federico Mena Quintero <federico gnome org>
Date: Tue Jan 3 18:22:48 2017 -0600

    Tag for version 2.41.0

Changes since the last tag '2.40.16':

Chun-wei Fan (11):
      Visual Studio builds: Look for cairo headers in $(prefix)/include/cairo
      build/: Force MSVC project file generation on Makefile.am changes
      Remove rsvg-install.props's during re-generation
      Visual Studio builds: Add NMake Makefile for the Rust bits
      Visual Studio builds: Use a default value for $(CARGO)
      MSVC builds: Make MSVC 2013 the baseline MSVC Version
      Visual Studio builds: Fix librsvg DLL linking
      Visual Studio builds: Fix rsvg-view-3 projects
      Visual Studio builds: Integrate Rust build process
      Visual Studio builds: Tell about Rust
      build/Makefile.msvcproj: Fix cleanup

Federico Mena Quintero (248):
      Post-release version bump to 2.40.17
      Normalize test reference PNGs; font rendering changed a little bit
      rsvg-base: move duplicated code to a function
      rsvg-convert: Remove redundant code for zlib decompression
      test-display.c: Remove redundant code for zlib decompression
      Oops, removed unused variable
      Start a branch to port bits of librsvg to Rust
      marker.rs: Use variables whose purpose is more clear
      marker.rs: Add test for path_to_segments() for open paths
      marker.rs: Rename p1x/p1y, etc. to x1/y1, etc.
      marker.rs: Turn Segment from a struct into an enum
      marker.rs: Factor out replacement/creation of segments
      marker.rs: Separate segment setup from the state machine logic
      marker.rs: In tests, factor out creation of helper cairo::Context
      marker.rs: Test for multiple open subpaths
      marker.rs: Add utility functions to create segments for tests
      marker.rs: Utility function to test path_to_segments()
      marker.rs: Use helper functions to create Segments everywhere
      marker.rs: Fix curve tangents in make_curve(), not in the calling code
      Update the README
      Update the README
      marker.rs: Make the test assertion be (expected, computed)
      marker.rs: Test for a closed subpath.  We found a bug!
      marker.rs: ClosePath *does* need to generate a line at the end of a subpath
      marker.rs: rename SegmentState states to something more meaningful
      marker.rs: Handle Cairo's artificial moveto after a closepath
      marker.rs: Test for multiple closed subpaths
      marker.rs: Test for not having a moveto after a closepath
      marker.rs: Comments to explain what each test does
      marker.rs: Add a disabled test for a sequence of moveto commands
      marker.rs: Remove temporary variables in tests
      marker.rs: Create segments without an auxiliary variable
      marker.rs: In tests, use the global helper functions; don't duplicate them
      First cut at building the Rust library from Automake
      Disable building the Rust parts for now
      rsvg-marker: Move the RsvgMarker declarations inside the private .c file
      rsvg-shapes: Move the RsvgNodePath declarations inside the .c file
      rsvg-path: Update some obsolete comments
      rsvg_path_builder_init(): Remove n_elements argument
      rsvg-base: New function rsvg_acquire_node_of_type()
      Use rsvg_acquire_node_of_type() where type checks are necessary
      marker.rs: port points_equal() and is_zero_length_segment()
      marker.rs: port find_incoming_directionality_backwards()
      marker.rs: Remove auxiliary variables
      marker.rs: Port find_outgoing_directionality_forwards()
      marker.rs: Compute directionalities, not whether segments are zero-length
      marker.rs: Test the values of tangent vectors, not just their presence
      rsvg-path: Make RsvgPathBuilder a heap object
      rsvg-path: New function rsvg_path_builder_add_to_cairo_context()
      Render everything in terms of RsvgPathBuilder, not cairo_path_t
      marker.rs: Port rsvg_rust_render_markers() to Rust
      marker.rs: Remove superfluous checks
      rsvg-path: Make RsvgPathBuilder an opaque struct
      rsvg-path: remove no-op function
      marker.rs: Combine 'derive' attributes into a single one
      Cargo.toml: Use my git repo of gtk-rs/cairo for now
      path_builder.rs: Start porting RsvgPathBuilder
      marker.rs: Use cairo_sys::cairo_path_t correctly
      path_builder.rs: Compress declarations a bit
      path_builder.rs: Rename path_data to path_segments to reflect its PathSegment elements
      path_builder.rs: Move to Rust versions of _add_to_cairo_context(), _new(), _destroy()
      path_builder.rs: Make RsvgPathBuilder's methods public
      marker.rs: Use RsvgPathBuilder entirely; don't use Cairo paths
      path_builder.rs: Actually put a ClosePath in our array of cairo::PathSegment
      path_builder.rs: Port rsvg_path_builder_arc() to Rust.
      tests: Add a README.md; make rsvg-test.c's test names more clear
      tests/fixtures/reftests/svg1.1: Add the first batch of tests from the SVG test suite
      tests/README.md: Improve the markup; describe 'crash' and 'styles' as well
      rsvg-shapes: Remove unused struct field
      RsvgLength: replace the 'char factor' field with a 'unit' enum
      _rsvg_css_normalize_length(): Use a LengthDir enum instead of chars for the 'dir' argument
      rsvg-path: Make the path parser stop when there is an invalid character
      path_parser.rs: Start a parser for path data in Rust
      path_parser.rs: Start implementing a recursive descent parser
      path_parser.rs: rename object to PathParser and make it public
      path_parser.rs: Test and fix handling of numbers with decimals
      path_parser.rs: Tests for various representations of numbers
      path_parser.rs: tests for commas between numbers, and multi-lineto after moveto
      path_parser.rs: Comment on peculiarities and test for special cases with commas
      path_parser.rs: test for relative moveto-lineto-moveto
      path_parser.rs: Simplify optional_comma_whitespace()
      path_parser.rs: Put unimplemented stubs for the all the remaining drawing functions
      path_parser.rs: Implement lineto commands 'L' and 'l'
      path_parser.rs: Implement horizontal lineto commands 'H' and 'h'
      path_parser.rs: Implement vertical lineto commands 'V' and 'v'
      path_parser.rs: Implement curveto commands 'C' and 'c'
      path_parser.rs: Implement smooth curveto commands 'S' and 's'
      path_parser.rs: Don't process relative coordinates in emit_move_to()
      path_parser.rs: Place the emit_*() functions next to each other
      path_parser.rs: Factor out function to set both current and reflection points
      path_parser.rs: Implement quadratic curveto commands 'Q' and 'q'
      path_parser.rs: Factor out function to set the reflection and current points for cubic curves
      path_parser.rs: Rename reflection_{x,y} to cubic_reflection_{nx,y}
      path_parser.rs: Maintain reflection points for quadratic curves as well
      path_parser.rs: Implement smooth quadratic curveto commands 'T' and 't'
      path_parser.rs: Implement closepath commands 'Z' and 'z'
      path_parser.rs: Shorten names of test functions
      path_parser.rs: Split part of number() into a helper nonnegative_number() method
      path_parser.c: Implement arc comamnds 'A' and 'a'
      rsvg-path.h: Fully implemented in Rust now
      Regenerate test image for elliptical arcs that now passes
      path_parser.rs: Remove debug println!()
      rsvg-cairo-draw: Normalize stroke-width specified as percentage with respect to the viewport
      rsvg-styles: Use the viewport percentage computation specified in the spec
      rsvg_cairo_render_pango_layout(): Normalize stroke-width relative to LENGTH_DIR_BOTH
      rsvg-cairo-draw: Factor out function to set up a cairo_t for stroking
      Use new function rsvg_get_normalized_stroke_width() instead of doing this by hand everywhere
      rsvg-styles: New accessor functions for the state struct's markers
      Move the get_*_marker functions to take an RsvgDrawingCtx, not a RsvgState
      Move rsvg_render_markers() completely into Rust
      Make RsvgLength carry its own direction for normalization
      Remove unused function
      Remove unused field
      Inline a one-liner function that was only used in a single place
      Remove unused struct field
      path_builder.rs: No need to repr(C) for RsvgPathBuilder; it's opaque
      rsvg-cairo-render: Remove obsolete comment; add some assertions
      Rename rsvg_filter_set_atts() for consistency
      Rename function to rsvg_defs_register_node_by_id()
      Register newly-created nodes in the defs as soon as possible
      RsvgDefs: Keep track only of nodes that have an id, or are externals
      Remove unused global variable
      rsvg_state_finalize(): Clear freed fields
      Make rsvg_state_new() / rsvg_state_free() the only way of getting new states
      Make rsvg_state_dominate() static
      Enable dimensions tests
      tests/dimensions.c: Assert that we got the sub-object; print the dimensions
      Disable the "/dimensions/sub/rect with transform" test for now
      Make rsvg_state_override() static
      marker.rs: Iterate on vector slices, instead of ranges, so we can omit bounds checking
      marker.rs: Remove superfluous parentheses
      marker.rs: Take slices instead of &Vec<Segment>
      strtod.rs: Shitty implementation of strtod(); we'll need it to parse things easily
      strtod.rs: Move the last_pos housekeeping until the end
      strtod.rs: Don't consume the 'e' in strtod("42em")
      length.rs: New file with RsvgLength and a public rsvg_length_parse()
      Gradients: Don't store "current color" for gradient nodes
      Start adding SVG tests for gradients
      length.rs: Remove debugging println!()
      rsvg-styles: Use g_message() instead of g_warning() for errors from libcroco
      Rename test-display.c to rsvg-view.c
      Add official test files for gradients.  Some do not pass.
      RsvgGradientStop: store whether the stop's values are valid
      Radial gradients: fix the focus point so it lies within the gradient's circle
      Ensure gradient stop offsets are in nondecreasing order.
      Do not inherit gradient stop color and opacity from the gradient's parent object
      Test 21 for gradients also passes; regenerate ref image
      Remove test 20 for gradients; it is for animations
      Remove superfluous term
      Make condition slightly easier to read
      Rename rsvg-path.h to rsvg-path-builder.h
      RsvgLength: make ::parse() a constructor, not a standalone parse_length() function
      rsvg_length_hand_normalize(): Fully implemented now in Rust
      Rename _rsvg_{push,pop}_view_box to rsvg_drawing_ctx_{push,pop}_view_box
      Use a new rsvg_drawing_ctx_get_view_box_size() throughout
      Use a new rsvg_drawing_ctx_get_dpi() accessor throughout
      rsvt-text: Don't pass an RsvgState around; get it from the context
      Use a new rsvg_drawing_ctx_get_normalized_font_size(); make the computation in a helper function
      Make viewport_percentage() internal to rsvg-css.c
      drawing_ctx.rs: Put the declaration of RsvgDrawingCtx here
      Implement rsvg_length_normalize() fully in Rust
      Remove unused RsvgLoadPolicy
      RsvgNode: don't keep the node's element name in this struct while parsing
      Make rsvg_node_set_atts() static
      property_bag.rs: Bindings for RsvgPropertyBag
      node_set_atts(): Check here for the property bag being empty
      Dispatch creation of new nodes from an array of element names, not a chain of strcmp()
      NodeCreator: Add a supports_class_attribute field, and populate it from the spec
      node_set_atts(): Call rsvg_parse_style_attrs() here, not in every node implementation
      path_parser.rs: Make PathParser private, and only have a public parse_path_into_builder() function
      node.rs / shapes.rs - Start a Rust implementation for nodes
      rsvg-test: Ignore SVG fixtures that start with "ignore-"
      node_is_filter_primitive(): make a private function, not a public macro
      Use an accessor function rsvg_node_get_state() throughout
      Use an accessor function rsvg_node_get_parent() throughout
      Use an iterator function rsvg_node_foreach_child() throughout
      Rename rsvg_node_group_pack() to rsvg_node_add_child()
      Use a new rsvg_node_type() function throughout instead of an RSVG_NODE_TYPE() macro
      rsvg-marker.c: Iterate through children with rsvg_node_foreach_child()
      add_color_stops_for_gradient(): Iterate through the stops with rsvg_node_foreach_child()
      gradient.rs: Start an implementation of gradient parameters in Rust
      gradient.rs: Don't initialize RsvgLength by hand; actually parse a valid one
      gradient.rs: Implementation of gradient fallbacks
      rsvg-cairo-draw.c: Factor out common code to set a cairo_pattern_t from a gradient
      gradient.rs: Export functions to create Gradient objects and set their color stops
      bbox.rs: Implement RsvgBbox in Rust
      New function rsvg_cairo_get_cairo_context()
      Wrap some more RsvgDrawingCtx functions in Rust
      Reorder some struct fields for consistency
      gradient.rs: Implement setting linear gradients on a Cairo context
      gradient.rs: Implement gradient_radial_new()
      Rename rsvg_acquire_node*() / rsvg_release_node() to rsvg_drawing_ctx_*_node() throughout
      fix: implement gradient_radial_new
      drawing_ctx.rs: Wrappers for acquire_node() and release_node()
      gradient.rs: Finish porting gradients to Rust!  Yay!
      rsvg-cairo-draw.c: Use the Rust implementation of the gradient resolver
      gradient.rs: Destroy the gradient that we created with the C helper function
      gradient.rs: Avoid copying a gradient when resolving
      node.rs: Rename trait Node to NodeTrait
      Remove obsolete comment
      Remove superfluous cairo_save()/cairo_restore()
      Push/pop the state stack in rsvg_node_draw(), not everywhere it is called
      Don't push/pop a new state for nodes that wouldn't be drawn anyway
      Remove _rsvg_node_finalize(); leave only _rsvg_node_free()
      Initialize the RsvgNode vtables in _rsvg_node_init()
      Remove unused prototype
      Use rsvg_node_foreach_child() instead of accessing children directly
      bbox.rs: Oops, return the correct dst.rect.height
      Fix obsolete comment
      rsvg_cairo_render_new(): Initialize ->bbox to the identity affine
      feComponentTransferFunction: use the last feFuncX element for each channel, per the spec
      Add test files for markers
      bgo#763386 - Handle curveto segments where only three control points are coincident
      Fix offsets in rsvg_filter_primitive_image_render()
      Don't do our own compositing for feComposite; let Cairo handle it
      Add a feComposite test
      bgo#603550 - Compute the luminance correctly when generating a mask
      Add test files for bug #761871 - maintain separate reflection points for cubic and quadratic curves
      rsvg-filter: Don't use CLAMP(x, 0, max) on unsigned values
      rsvg-shapes: Stylistic fix
      io-svg: Propagate the result of rsvg_handle_close(), oops
      Tell automake to output an .xz archive, not a .bz2
      Check for Rust/Cargo in configure.ac; make Makefile.am smarter about rust
      Make this 2.41.0beta! yay!
      rsvg-paint-server.c: Remove old gradient code; it is unused now
      Be explicit about how stop-color and stop-opacity are inherited
      tests/README.md: Mention the "ignore-" prefix for reftests
      Update NEWS for 2.41.0
      Special thanks to the Rust people
      Make cargo run when srcdir != builddir
      rsvg-test: allow skipping directories that start with "ignore" as well as files
      tests/Makefile.am: Fix typos that caused reftests/bugs/* not to get distributed
      bgo#763386: Handle missing case of coincident control points
      Update AUTHORS
      More AUTHORS
      Make some arguments immutable
      Switch to the official gtk-rs/cairo now that it supports matrix methods
      Update AUTHORS from the whole git log
      configure.ac: Add a --enable-debug option for debug vs. release
      Add a testing mode so reftests can use predictable text rendering
      Normalize test reference files so they don't dig into my private stash of fonts...
      bgo#686953 - Support the "marker" shorthand attribute
      Update NEWS
      marker.rs: Normalize negative angles into positive ones
      bgo#776297 - Only render markers on path, line, polyline, polygon elements
      Update NEWS
      Merge branch 'rustification'
      We are not in beta anymore; bump to 2.41.0 final.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]