summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * tolerable_difference(): Increase the tolerance to 8Federico Mena Quintero2023-03-301-1/+1
| | | | | | | | | | | | | | This is for #947. I am not sure if Cairo or Pixman changed their rendering of gradients, or what. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/817>
| * Remove the test filter-morphology-from-reference-page.svgFederico Mena Quintero2023-03-303-38/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | This was added during the port of the filters code to Rust, but it is redundant with tests/fixtures/reftests/svg1.1/filters-morph-01-f.svg Also this file produces frequent failures in the test suite whenever the font rendering stack changes even just a bit. The point of the test is to test the feMorphology, not text rendering - so remove it in favor of the other test from the SVG1.1 test suite, which does erosion and dilation filters on paths, not on text. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/817>
| * CI: bump the container imageFederico Mena Quintero2023-03-301-1/+1
|/ | | | | | I want to get an updated font rendering stack for #948. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/817>
* Merge branch 'remove-unused-chrono-wasmbind-feature' into 'main'Marge Bot2023-03-242-4/+2
|\ | | | | | | | | Remove unused chrono wasmbind feature See merge request GNOME/librsvg!819
| * Remove unused chrono wasmbind featureKalev Lember2023-03-242-4/+2
|/ | | | | | | This helps with building librsvg on Fedora where the rust-chrono package is built with the wasmbind feature disabled. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/819>
* Merge branch 'replace-encoding-crate' into 'main'Marge Bot2023-03-233-8/+16
|\ | | | | | | | | xml: Replace unmaitained encoding crate by encoding_rs See merge request GNOME/librsvg!818
| * xml: Replace unmaitained encoding crate by encoding_rsLukáš Tyrychtr2023-03-233-8/+16
|/ | | | | | | | This replaces unmaintained encoding crate by encoding_rs. The indirect reference through lopdf still remains, but this is a start. This fixes the direct part of #949. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/818>
* Merge branch 'layer' into 'main'Marge Bot2023-03-2313-233/+430
|\ | | | | | | | | Proceed with the layer abstraction work from Michael Howell See merge request GNOME/librsvg!816
| * roadmap: better explain the purpose of the render tree, hopefullyFederico Mena Quintero2023-03-232-1/+52
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * Remove ComputedValues argument from with_discrete_layer() and its callersFederico Mena Quintero2023-03-236-23/+6
| | | | | | | | | | | | Yay! Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * Use NormalizeValues throughout for PaintServer::to_user_spaceFederico Mena Quintero2023-03-237-39/+39
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * NormalizeValues: Hacky (?) way to extract what is needed from ComputedValues ↵Federico Mena Quintero2023-03-231-7/+25
| | | | | | | | | | | | | | | | | | | | | | | | for normalization I want to remove the use of ComputedValues from DrawingCtx::with_discrete_layer(), but it is needed for NormalizeParams::new(). So, provide a temporary type NormalizeValues that just extracts the information needed from ComputedValues - in this case, just the font size. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * clippy: remove unnecessary referencesFederico Mena Quintero2023-03-231-3/+3
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * Don't compute a value twiceFederico Mena Quintero2023-03-231-1/+1
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * DrawingCtx::run_filters() - Take a layout::Filter, not a FilterValueListFederico Mena Quintero2023-03-231-9/+8
| | | | | | | | | | | | | | That way we can pick up the current_color from there, thus reducing the number of arguments. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * layout::Filter - resolve the stroke/fill paint sources hereFederico Mena Quintero2023-03-232-32/+44
| | | | | | | | | | | | | | Instead of in with_discrete_layer(). There, we only turn them to user-space coordinates. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * get_filter_from_filter_list(): Extract functionFederico Mena Quintero2023-03-231-4/+12
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * StackingCtx: decide whether there are filters at all right here, not in ↵Federico Mena Quintero2023-03-232-22/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DrawingCtx We used to have struct StackingCtx { filter: Filter } struct Filter { filter: properties::Filter, // other gunk } and there, Filter.filter can be properties::Filter::None or properties::Filter::List(FilterValueList). Resolve this early into an Option<Filter>, like this: struct StackingCtx { filter: Option<Filter> } struct Filter { filter_list: FilterValueList, // other gunk } This way, subsequent code in DrawingCtx doesn't have to tear apart the Filter.filter to see whether there's actually a filter specification there or just "none". Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * layout::Filter: new struct; move some of the filter-related fields hereFederico Mena Quintero2023-03-232-14/+26
| | | | | | | | | | | | | | | | Let's try to avoid passing so many arguments to the functions in drawing_ctx.rs. In the end this will also encapsulate all the gunk needed for resolving filters. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * StackingCtx: extract the current_color here instead of in with_discrete_layerFederico Mena Quintero2023-03-232-5/+8
| | | | | | | | | | | | | | I want to remove the use of ComputedValues in with_discrete_layer; this removes one of the uses. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * Layer::Image - new variant for imagesFederico Mena Quintero2023-03-233-6/+15
| | | | | | | | | | | | | | This moves the information for drawing images into the Layer enum, similar to basic shapes and text elements. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * draw_text: make privateFederico Mena Quintero2023-03-231-1/+1
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * draw_shape: make privateFederico Mena Quintero2023-03-231-1/+1
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * Remove the transform argument from with_discrete_layer's draw_fn callbackFederico Mena Quintero2023-03-233-25/+15
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * draw_shape: use get_transform_for_stacking_ctx() as wellFederico Mena Quintero2023-03-232-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the only other place apart from text.rs that used the transform passed in the draw_fn callback from with_discrete_layer(). It turns out that get_transform_for_stacking_ctx() needs to know whether we are creating a clipping path; in that case, there's no need to look at the stacking context. This is getting convoluted; I kind of want to split the clipping stuff away from the main draw() method. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * New function to get the transform that will be used for the stacking contextFederico Mena Quintero2023-03-232-8/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes @notriddle's MR when rebased on top of the changes to have a ValidTransform instead of just Transform in DrawingCtx. The text code needs to know the actual transform that will be used on the target surface, which could be the temporary surface for compositing an isolated stacking context, or the "normal" surface without isolation. This is the transform that is passed to the draw_fn callback in with_discrete_layer(). Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * render_tree.rst: detail the problem with issue #1Federico Mena Quintero2023-03-231-7/+21
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * render_tree.rst: Describe the render model; add some linksFederico Mena Quintero2023-03-231-10/+24
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * render_tree.rst: Fix markupFederico Mena Quintero2023-03-231-1/+1
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
| * Layer abstractionMichael Howell2023-03-234-102/+164
|/ | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/816>
* Merge branch 'expire-docs-artifacts' into 'main'Marge Bot2023-03-231-1/+3
|\ | | | | | | | | CI: expire all documentation artifacts See merge request GNOME/librsvg!815
| * CI: expire all documentation artifactsFederico Mena Quintero2023-03-221-1/+3
|/ | | | | | | I'm not sure if they were being kept around indefinitely after being deployed to the web site. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/815>
* Merge branch 'prepare-2.56.0' into 'main'2.56.0Marge Bot2023-03-175-94/+155
|\ | | | | | | | | Prepare 2.56.0 See merge request GNOME/librsvg!814
| * NEWS: Copy the release notes from the 2.55 stable seriesFederico Mena Quintero2023-03-171-0/+30
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/814>
| * Update NEWSFederico Mena Quintero2023-03-161-0/+12
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/814>
| * Bump version to 2.56.0Federico Mena Quintero2023-03-164-94/+113
|/ | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/814>
* Merge branch 'alatiera-main-patch-07003' into 'main'Marge Bot2023-03-171-5/+1
|\ | | | | | | | | ci: Merge artifact keys for rsvg-full See merge request GNOME/librsvg!813
| * ci: export .log files for failed msys job as wellJordan Petridis2023-03-161-0/+1
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/813>
| * ci: Merge artifact keys for rsvg-fullJordan Petridis2023-03-161-5/+0
|/ | | | | | gitlab can't deal with multiple artifact keys, and the last one overrides it. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/813>
* Merge branch 'win32-tests'Federico Mena Quintero2023-03-1614-22/+98
|\
| * tests/README.md - mention TESTS_OUTPUT_DIRFederico Mena Quintero2023-03-141-0/+11
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/812>
| * CI: use TESTS_OUTPUT_DIR throughout for the testsFederico Mena Quintero2023-03-142-5/+14
| | | | | | | | | | | | | | Some jobs were not picking up the test results correctly on failure, but since the test suite usually passes, I didn't notice this. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/812>
| * Use the TESTS_OUTPUT_DIR env var instead of OUT_DIR for the output of failed ↵Federico Mena Quintero2023-03-142-6/+6
| | | | | | | | | | | | | | | | | | | | | | reference tests "cargo test" sets OUT_DIR itself to something inside the build directories, which is really inconvenient, and we are not producing build artifacts anyway. So, use a separate variable TESTS_OUTPUT_DIR instead. The next commits will make the CI use this. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/812>
| * (#940): Fix the rsvg.lib binary name for nmake buildsFederico Mena Quintero2023-03-142-4/+4
| | | | | | | | | | | | | | | | Sorry for the breakage! We really need CI for this configuration! Fixes https://gitlab.gnome.org/GNOME/librsvg/-/issues/940 Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/812>
| * win32: keep test artifacts to debug thingsFederico Mena Quintero2023-03-141-0/+5
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/812>
| * CI: fix artifacts path for failed tests on non-autotools buildsFederico Mena Quintero2023-03-141-3/+3
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/812>
| * Merge branch 'xinclude-recursion-942' into 'main'Marge Bot2023-03-146-2/+53
| |\ | | | | | | | | | | | | | | | | | | (#942): Fix crash when XML files get recursively included through XInclude Closes #942 See merge request GNOME/librsvg!810
| | * Add a test for xinclude recursion across two filesFederico Mena Quintero2023-03-143-0/+7
| | | | | | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/810>
| | * (#942): Fix crash when XML files get recursively included through XIncludeFederico Mena Quintero2023-03-144-2/+46
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is a new limit, MAX_XINCLUDE_DEPTH, which is a constant with the maximum level of nesting for XInclude. We keep a counter of the current nesting level in XmlStateInner, and check against the limit every time we need to xinclude another XML document. The sample file has <xi:include parse="xml" href=""/> which properly causes the *same* file to be included, per https://www.w3.org/TR/xinclude-11/#include_element The href attribute is optional; the absence of this attribute is the same as specifying href="", that is, the reference is to the same document. Fixes https://gitlab.gnome.org/GNOME/librsvg/-/issues/942 Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/810>
| * Merge branch 'sanitize-deps' into 'main'Marge Bot2023-03-091-3/+3
| |\ |/ / | | | | | | Bump some dependency versions See merge request GNOME/librsvg!808