[librsvg] Created tag 2.41.0
- From: Federico Mena Quintero <federico src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [librsvg] Created tag 2.41.0
- Date: Wed, 4 Jan 2017 00:28:56 +0000 (UTC)
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]