[librsvg] (248 commits) ...Merge branch 'rustification'
- From: Federico Mena Quintero <federico src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [librsvg] (248 commits) ...Merge branch 'rustification'
- Date: Tue, 3 Jan 2017 20:19:21 +0000 (UTC)
Summary of changes:
f27a8c9... Start a branch to port bits of librsvg to Rust (*)
fcdac76... marker.rs: Use variables whose purpose is more clear (*)
30f6d8f... marker.rs: Add test for path_to_segments() for open paths (*)
7559ba4... marker.rs: Rename p1x/p1y, etc. to x1/y1, etc. (*)
755e526... marker.rs: Turn Segment from a struct into an enum (*)
e503b9f... marker.rs: Factor out replacement/creation of segments (*)
eb0c099... marker.rs: Separate segment setup from the state machine lo (*)
b52c851... marker.rs: In tests, factor out creation of helper cairo::C (*)
237dd6c... marker.rs: Test for multiple open subpaths (*)
7effbe1... marker.rs: Add utility functions to create segments for tes (*)
cdc5b59... marker.rs: Utility function to test path_to_segments() (*)
9fcf534... marker.rs: Use helper functions to create Segments everywhe (*)
c0c7be4... marker.rs: Fix curve tangents in make_curve(), not in the c (*)
b518bba... Update the README (*)
4b2273a... marker.rs: Make the test assertion be (expected, computed) (*)
d252215... marker.rs: Test for a closed subpath. We found a bug! (*)
80fc5f5... marker.rs: ClosePath *does* need to generate a line at the (*)
9c93a2a... marker.rs: rename SegmentState states to something more mea (*)
e5d861e... marker.rs: Handle Cairo's artificial moveto after a closepa (*)
983a67f... marker.rs: Test for multiple closed subpaths (*)
971ee41... marker.rs: Test for not having a moveto after a closepath (*)
f9c447f... marker.rs: Comments to explain what each test does (*)
fbf7eed... marker.rs: Add a disabled test for a sequence of moveto com (*)
a0693ea... marker.rs: Remove temporary variables in tests (*)
20fae80... marker.rs: Create segments without an auxiliary variable (*)
646d565... marker.rs: In tests, use the global helper functions; don't (*)
d4247fc... First cut at building the Rust library from Automake (*)
5a76a7d... Disable building the Rust parts for now (*)
c0263bd... rsvg-marker: Move the RsvgMarker declarations inside the pr (*)
ae1f5a5... rsvg-shapes: Move the RsvgNodePath declarations inside the (*)
2123dbf... rsvg-path: Update some obsolete comments (*)
ddd77f6... rsvg_path_builder_init(): Remove n_elements argument (*)
a761759... rsvg-base: New function rsvg_acquire_node_of_type() (*)
d8978c3... Use rsvg_acquire_node_of_type() where type checks are neces (*)
7e69e92... marker.rs: port points_equal() and is_zero_length_segment() (*)
1543bde... marker.rs: port find_incoming_directionality_backwards() (*)
456d3ed... marker.rs: Remove auxiliary variables (*)
3ea3f3f... marker.rs: Port find_outgoing_directionality_forwards() (*)
5c8cf44... marker.rs: Compute directionalities, not whether segments a (*)
82f53f9... marker.rs: Test the values of tangent vectors, not just the (*)
32f2115... rsvg-path: Make RsvgPathBuilder a heap object (*)
00baf53... rsvg-path: New function rsvg_path_builder_add_to_cairo_cont (*)
13e535b... Render everything in terms of RsvgPathBuilder, not cairo_pa (*)
035d6c2... marker.rs: Port rsvg_rust_render_markers() to Rust (*)
0287b49... marker.rs: Remove superfluous checks (*)
2d21ba6... rsvg-path: Make RsvgPathBuilder an opaque struct (*)
028634f... rsvg-path: remove no-op function (*)
1d39ddd... marker.rs: Combine 'derive' attributes into a single one (*)
6eb8d23... Cargo.toml: Use my git repo of gtk-rs/cairo for now (*)
e354165... path_builder.rs: Start porting RsvgPathBuilder (*)
078a6ad... marker.rs: Use cairo_sys::cairo_path_t correctly (*)
3c8c6a4... path_builder.rs: Compress declarations a bit (*)
a6b9f74... path_builder.rs: Rename path_data to path_segments to refle (*)
720f378... path_builder.rs: Move to Rust versions of _add_to_cairo_con (*)
a9fde1f... path_builder.rs: Make RsvgPathBuilder's methods public (*)
7f5c09b... marker.rs: Use RsvgPathBuilder entirely; don't use Cairo pa (*)
379dea0... path_builder.rs: Actually put a ClosePath in our array of c (*)
5c7a8ba... path_builder.rs: Port rsvg_path_builder_arc() to Rust. (*)
a412839... tests: Add a README.md; make rsvg-test.c's test names more (*)
1327245... tests/fixtures/reftests/svg1.1: Add the first batch of test (*)
f88130d... tests/README.md: Improve the markup; describe 'crash' and ' (*)
c465af1... rsvg-shapes: Remove unused struct field (*)
b7768db... RsvgLength: replace the 'char factor' field with a 'unit' e (*)
cb166d9... _rsvg_css_normalize_length(): Use a LengthDir enum instead (*)
186418e... rsvg-path: Make the path parser stop when there is an inval (*)
be7cfed... path_parser.rs: Start a parser for path data in Rust (*)
19d94f3... path_parser.rs: Start implementing a recursive descent pars (*)
130ec0a... path_parser.rs: rename object to PathParser and make it pub (*)
5d07d93... path_parser.rs: Test and fix handling of numbers with decim (*)
21a00ea... path_parser.rs: Tests for various representations of number (*)
6668404... path_parser.rs: tests for commas between numbers, and multi (*)
d491d8e... path_parser.rs: Comment on peculiarities and test for speci (*)
955ebac... path_parser.rs: test for relative moveto-lineto-moveto (*)
1490d99... path_parser.rs: Simplify optional_comma_whitespace() (*)
a4fb81c... path_parser.rs: Put unimplemented stubs for the all the rem (*)
fc37e1e... path_parser.rs: Implement lineto commands 'L' and 'l' (*)
147d69e... path_parser.rs: Implement horizontal lineto commands 'H' an (*)
57c1b63... path_parser.rs: Implement vertical lineto commands 'V' and (*)
ae3ca6f... path_parser.rs: Implement curveto commands 'C' and 'c' (*)
aa71550... path_parser.rs: Implement smooth curveto commands 'S' and ' (*)
19216f3... path_parser.rs: Don't process relative coordinates in emit_ (*)
56b30a4... path_parser.rs: Place the emit_*() functions next to each o (*)
7594e5c... path_parser.rs: Factor out function to set both current and (*)
7c08df8... path_parser.rs: Implement quadratic curveto commands 'Q' an (*)
f0d67ca... path_parser.rs: Factor out function to set the reflection a (*)
403881c... path_parser.rs: Rename reflection_{x,y} to cubic_reflection (*)
c4ed9b2... path_parser.rs: Maintain reflection points for quadratic cu (*)
d494551... path_parser.rs: Implement smooth quadratic curveto commands (*)
0d8d4b3... path_parser.rs: Implement closepath commands 'Z' and 'z' (*)
90204bb... path_parser.rs: Shorten names of test functions (*)
b8a5bff... path_parser.rs: Split part of number() into a helper nonneg (*)
6d5788b... path_parser.c: Implement arc comamnds 'A' and 'a' (*)
e670686... rsvg-path.h: Fully implemented in Rust now (*)
2db4b52... Regenerate test image for elliptical arcs that now passes (*)
7f7dfef... path_parser.rs: Remove debug println!() (*)
aa54f11... rsvg-cairo-draw: Normalize stroke-width specified as percen (*)
7abdac9... rsvg-styles: Use the viewport percentage computation specif (*)
ad0ebab... rsvg_cairo_render_pango_layout(): Normalize stroke-width re (*)
8e84816... rsvg-cairo-draw: Factor out function to set up a cairo_t fo (*)
da4a2a7... Use new function rsvg_get_normalized_stroke_width() instead (*)
e0dcaa2... rsvg-styles: New accessor functions for the state struct's (*)
a77084d... Move the get_*_marker functions to take an RsvgDrawingCtx, (*)
d81282c... Move rsvg_render_markers() completely into Rust (*)
5a85e7c... Make RsvgLength carry its own direction for normalization (*)
a2e975e... Remove unused function (*)
fc13538... Remove unused field (*)
35a7381... Inline a one-liner function that was only used in a single (*)
fcec5ea... Remove unused struct field (*)
f6cbe39... path_builder.rs: No need to repr(C) for RsvgPathBuilder; it (*)
142a599... rsvg-cairo-render: Remove obsolete comment; add some assert (*)
28d00ad... Rename rsvg_filter_set_atts() for consistency (*)
e478a29... Rename function to rsvg_defs_register_node_by_id() (*)
c8b08f1... Register newly-created nodes in the defs as soon as possibl (*)
f22b3cb... RsvgDefs: Keep track only of nodes that have an id, or are (*)
0a416d7... Remove unused global variable (*)
a450f40... rsvg_state_finalize(): Clear freed fields (*)
468f925... Make rsvg_state_new() / rsvg_state_free() the only way of g (*)
68f0db9... Make rsvg_state_dominate() static (*)
16d652c... Enable dimensions tests (*)
57471e1... tests/dimensions.c: Assert that we got the sub-object; prin (*)
714e3e3... Disable the "/dimensions/sub/rect with transform" test for (*)
9bbadeb... Make rsvg_state_override() static (*)
77a40fe... marker.rs: Iterate on vector slices, instead of ranges, so (*)
e483065... marker.rs: Remove superfluous parentheses (*)
806ec92... marker.rs: Take slices instead of &Vec<Segment> (*)
fb723fa... strtod.rs: Shitty implementation of strtod(); we'll need it (*)
57a48fd... strtod.rs: Move the last_pos housekeeping until the end (*)
a043810... strtod.rs: Don't consume the 'e' in strtod("42em") (*)
03d7716... length.rs: New file with RsvgLength and a public rsvg_lengt (*)
b491f38... Gradients: Don't store "current color" for gradient nodes (*)
4a37888... Start adding SVG tests for gradients (*)
ece994a... length.rs: Remove debugging println!() (*)
1088bea... rsvg-styles: Use g_message() instead of g_warning() for err (*)
88a1fb4... Rename test-display.c to rsvg-view.c (*)
38927a6... Add official test files for gradients. Some do not pass. (*)
4006aff... RsvgGradientStop: store whether the stop's values are valid (*)
ac4ca7e... Radial gradients: fix the focus point so it lies within the (*)
f3fb509... Ensure gradient stop offsets are in nondecreasing order. (*)
e28afe4... Do not inherit gradient stop color and opacity from the gra (*)
f3aac51... Test 21 for gradients also passes; regenerate ref image (*)
825fed0... Remove test 20 for gradients; it is for animations (*)
69789ce... Remove superfluous term (*)
1e12b14... Make condition slightly easier to read (*)
deb3e8e... Rename rsvg-path.h to rsvg-path-builder.h (*)
822459f... RsvgLength: make ::parse() a constructor, not a standalone (*)
84af994... rsvg_length_hand_normalize(): Fully implemented now in Rust (*)
932db35... Rename _rsvg_{push,pop}_view_box to rsvg_drawing_ctx_{push, (*)
2376ac2... Use a new rsvg_drawing_ctx_get_view_box_size() throughout (*)
11282a1... Use a new rsvg_drawing_ctx_get_dpi() accessor throughout (*)
cba4105... rsvt-text: Don't pass an RsvgState around; get it from the (*)
b55970a... Use a new rsvg_drawing_ctx_get_normalized_font_size(); make (*)
66f7394... Make viewport_percentage() internal to rsvg-css.c (*)
4eca2e0... drawing_ctx.rs: Put the declaration of RsvgDrawingCtx here (*)
4d19ded... Implement rsvg_length_normalize() fully in Rust (*)
4daa2de... Remove unused RsvgLoadPolicy (*)
b2c5f37... RsvgNode: don't keep the node's element name in this struct (*)
b4d5be4... Make rsvg_node_set_atts() static (*)
997c1a0... property_bag.rs: Bindings for RsvgPropertyBag (*)
58a645c... node_set_atts(): Check here for the property bag being empt (*)
4b22ec8... Dispatch creation of new nodes from an array of element nam (*)
048bb00... NodeCreator: Add a supports_class_attribute field, and popu (*)
54dc79f... node_set_atts(): Call rsvg_parse_style_attrs() here, not in (*)
7bd590a... path_parser.rs: Make PathParser private, and only have a pu (*)
7f696c5... node.rs / shapes.rs - Start a Rust implementation for nodes (*)
ce4fc2c... rsvg-test: Ignore SVG fixtures that start with "ignore-" (*)
ce69346... node_is_filter_primitive(): make a private function, not a (*)
9e57921... Use an accessor function rsvg_node_get_state() throughout (*)
d1ef96e... Use an accessor function rsvg_node_get_parent() throughout (*)
852a2a3... Use an iterator function rsvg_node_foreach_child() througho (*)
4f1d58d... Rename rsvg_node_group_pack() to rsvg_node_add_child() (*)
a49f8d3... Use a new rsvg_node_type() function throughout instead of a (*)
f8fe835... rsvg-marker.c: Iterate through children with rsvg_node_fore (*)
a2bf17d... add_color_stops_for_gradient(): Iterate through the stops w (*)
2842469... gradient.rs: Start an implementation of gradient parameters (*)
6e1986a... gradient.rs: Don't initialize RsvgLength by hand; actually (*)
0e9bda1... gradient.rs: Implementation of gradient fallbacks (*)
bd32612... rsvg-cairo-draw.c: Factor out common code to set a cairo_pa (*)
370634f... gradient.rs: Export functions to create Gradient objects an (*)
0ca4455... bbox.rs: Implement RsvgBbox in Rust (*)
3a8f076... New function rsvg_cairo_get_cairo_context() (*)
efb5840... Wrap some more RsvgDrawingCtx functions in Rust (*)
2592401... Reorder some struct fields for consistency (*)
675922d... gradient.rs: Implement setting linear gradients on a Cairo (*)
4b084cd... gradient.rs: Implement gradient_radial_new() (*)
6fa8e4f... Rename rsvg_acquire_node*() / rsvg_release_node() to rsvg_d (*)
6ece187... fix: implement gradient_radial_new (*)
9355820... drawing_ctx.rs: Wrappers for acquire_node() and release_nod (*)
1c0b41d... gradient.rs: Finish porting gradients to Rust! Yay! (*)
30d12a9... rsvg-cairo-draw.c: Use the Rust implementation of the gradi (*)
5e36266... gradient.rs: Destroy the gradient that we created with the (*)
6438cb7... gradient.rs: Avoid copying a gradient when resolving (*)
e3f29e9... node.rs: Rename trait Node to NodeTrait (*)
04ee0f2... Remove obsolete comment (*)
d29eb93... Remove superfluous cairo_save()/cairo_restore() (*)
ac48e50... Push/pop the state stack in rsvg_node_draw(), not everywher (*)
2d5a23c... Don't push/pop a new state for nodes that wouldn't be drawn (*)
3f685fe... Remove _rsvg_node_finalize(); leave only _rsvg_node_free() (*)
126455c... Initialize the RsvgNode vtables in _rsvg_node_init() (*)
f732406... Remove unused prototype (*)
dc85a25... Use rsvg_node_foreach_child() instead of accessing children (*)
1516c90... bbox.rs: Oops, return the correct dst.rect.height (*)
99342d5... Fix obsolete comment (*)
d37e275... rsvg_cairo_render_new(): Initialize ->bbox to the identity (*)
d136efe... feComponentTransferFunction: use the last feFuncX element f (*)
f01f0a7... Add test files for markers (*)
f52d96f... bgo#763386 - Handle curveto segments where only three contr (*)
c24059c... Fix offsets in rsvg_filter_primitive_image_render() (*)
5b83d78... Don't do our own compositing for feComposite; let Cairo han (*)
eb76656... Add a feComposite test (*)
29eddba... bgo#603550 - Compute the luminance correctly when generatin (*)
68ae25b... Add test files for bug #761871 - maintain separate reflecti (*)
6d199be... rsvg-filter: Don't use CLAMP(x, 0, max) on unsigned values (*)
1a30e53... rsvg-shapes: Stylistic fix (*)
8cb8489... io-svg: Propagate the result of rsvg_handle_close(), oops (*)
218ae16... Tell automake to output an .xz archive, not a .bz2 (*)
bbca5c9... Check for Rust/Cargo in configure.ac; make Makefile.am smar (*)
5ea3754... Make this 2.41.0beta! yay! (*)
cd7028e... rsvg-paint-server.c: Remove old gradient code; it is unused (*)
c32694b... Be explicit about how stop-color and stop-opacity are inher (*)
3090bec... tests/README.md: Mention the "ignore-" prefix for reftests (*)
0525baf... Update NEWS for 2.41.0 (*)
f0c1131... Special thanks to the Rust people (*)
30a91d1... Make cargo run when srcdir != builddir (*)
3b80bf9... rsvg-test: allow skipping directories that start with "igno (*)
5a1b668... tests/Makefile.am: Fix typos that caused reftests/bugs/* no (*)
7714dfe... bgo#763386: Handle missing case of coincident control point (*)
917e7c8... Update AUTHORS (*)
f6bf80e... More AUTHORS (*)
6583d84... Visual Studio builds: Add NMake Makefile for the Rust bits (*)
5a55771... Visual Studio builds: Use a default value for $(CARGO) (*)
49ae87e... MSVC builds: Make MSVC 2013 the baseline MSVC Version (*)
7ee8451... Visual Studio builds: Fix librsvg DLL linking (*)
b502c8b... Visual Studio builds: Fix rsvg-view-3 projects (*)
1deacfc... Visual Studio builds: Integrate Rust build process (*)
1701dcb... Visual Studio builds: Tell about Rust (*)
d11e469... Make some arguments immutable (*)
77ea6a6... Switch to the official gtk-rs/cairo now that it supports ma (*)
4cc1045... Update AUTHORS from the whole git log (*)
c742926... configure.ac: Add a --enable-debug option for debug vs. rel (*)
25457b7... Add a testing mode so reftests can use predictable text ren (*)
9ec026c... Normalize test reference files so they don't dig into my pr (*)
c8ba1f6... bgo#686953 - Support the "marker" shorthand attribute (*)
f67c245... Update NEWS (*)
605408a... marker.rs: Normalize negative angles into positive ones (*)
6f270cf... bgo#776297 - Only render markers on path, line, polyline, p (*)
43c8ae3... Update NEWS (*)
5bc8c04... build/Makefile.msvcproj: Fix cleanup (*)
ebcbfae... Merge branch 'rustification'
(*) This commit already existed in another branch; no separate mail sent
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]