Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps) Update Tauri CLI (dev) #8226

Merged
merged 3 commits into from
Mar 3, 2024
Merged

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Nov 15, 2023

Mend Renovate

This PR contains the following updates:

Package Type Update Change
axum dependencies minor 0.6.20 -> 0.7.4
base64 dependencies minor 0.21.5 -> 0.22.0
clap dependencies patch 4.4 -> 4.5
colored dependencies patch 2.0 -> 2.1
env_logger dependencies minor 0.10.0 -> 0.11.2
handlebars dependencies patch 5.0 -> 5.1
itertools dependencies minor 0.11 -> 0.12
jsonrpsee (source) dependencies minor 0.20 -> 0.22
jsonrpsee-client-transport (source) dependencies minor 0.20 -> 0.22
jsonrpsee-core (source) dependencies minor 0.20 -> 0.22
jsonrpsee-ws-client (source) dependencies minor 0.20 -> 0.22
local-ip-address dependencies minor 0.5 -> 0.6
log dependencies patch 0.4.20 -> 0.4.21
napi dependencies patch 2.14 -> 2.16
napi-derive dependencies patch 2.14 -> 2.16
regex dependencies patch 1.10.2 -> 1.10.3
resvg dependencies minor 0.36.0 -> 0.40.0
ureq dependencies patch 2.9.1 -> 2.9.6
url dependencies patch 2.4 -> 2.5
zeroize (source) dependencies patch 1.6 -> 1.7

Release Notes

tokio-rs/axum (axum)

v0.7.4: axum - v0.7.4

Compare Source

  • fixed: Fix performance regression present since axum 0.7.0 (#​2483)
  • fixed: Improve debug_handler on tuple response types (#​2201)
  • added: Add must_use attribute to Serve and WithGracefulShutdown (#​2484)
  • added: Re-export axum_core::body::BodyDataStream from axum

v0.7.3: axum - v0.7.3

Compare Source

  • added: Body implements From<()> now (#​2411)
  • change: Update version of multer used internally for multipart (#​2433)
  • change: Update tokio-tungstenite to 0.21 (#​2435)
  • added: Enable tracing feature by default (#​2460)
  • added: Support graceful shutdown on serve (#​2398)
  • added: RouterIntoService implements Clone (#​2456)

v0.7.2: axum - v0.7.2

Compare Source

  • added: Add axum::body::to_bytes (#​2373)
  • fixed: Gracefully handle accept errors in serve (#​2400)

v0.7.1: axum - v0.7.1

Compare Source

  • fix: Fix readme.

v0.7.0: axum - v0.7.0

Compare Source

  • breaking: Update public dependencies. axum now requires
  • breaking: axum now requires tower-http 0.5
  • breaking: Remove deprecated WebSocketUpgrade::max_send_queue
  • breaking: The following types/traits are no longer generic over the request body
    (i.e. the B type param has been removed) (#​1751 and #​1789):
    • FromRequestParts
    • FromRequest
    • HandlerService
    • HandlerWithoutStateExt
    • Handler
    • LayeredFuture
    • Layered
    • MethodRouter
    • Next
    • RequestExt
    • RouteFuture
    • Route
    • Router
  • breaking: axum no longer re-exports hyper::Body as that type is removed
    in hyper 1.0. Instead axum has its own body type at axum::body::Body (#​1751)
  • breaking: extract::BodyStream has been removed as body::Body
    implements Stream and FromRequest directly (#​1751)
  • breaking: Change sse::Event::json_data to use axum_core::Error as its error type (#​1762)
  • breaking: Rename DefaultOnFailedUpdgrade to DefaultOnFailedUpgrade (#​1664)
  • breaking: Rename OnFailedUpdgrade to OnFailedUpgrade (#​1664)
  • breaking: TypedHeader has been move to axum-extra (#​1850)
  • breaking: Removed re-exports of Empty and Full. Use
    axum::body::Body::empty and axum::body::Body::from respectively (#​1789)
  • breaking: The response returned by IntoResponse::into_response must use
    axum::body::Body as the body type. axum::response::Response does this
    (#​1789)
  • breaking: Removed the BoxBody type alias and its box_body
    constructor. Use axum::body::Body::new instead (#​1789)
  • breaking: Remove RawBody extractor. axum::body::Body implements FromRequest directly (#​1789)
  • breaking: The following types from http-body no longer implement IntoResponse:
    • Full, use Body::from instead
    • Empty, use Body::empty instead
    • BoxBody, use Body::new instead
    • UnsyncBoxBody, use Body::new instead
    • MapData, use Body::new instead
    • MapErr, use Body::new instead
  • added: Add axum::extract::Request type alias where the body is axum::body::Body (#​1789)
  • added: Add Router::as_service and Router::into_service to workaround
    type inference issues when calling ServiceExt methods on a Router (#​1835)
  • breaking: Removed axum::Server as it was removed in hyper 1.0. Instead
    use axum::serve(listener, service) or hyper/hyper-util for more configuration options (#​1868)
  • breaking: Only inherit fallbacks for routers nested with Router::nest.
    Routers nested with Router::nest_service will no longer inherit fallbacks (#​1956)
  • fixed: Don't remove the Sec-WebSocket-Key header in WebSocketUpgrade (#​1972)
  • added: Add axum::extract::Query::try_from_uri (#​2058)
  • added: Implement IntoResponse for Box<str> and Box<[u8]> ([#​2035])
  • breaking: Simplify MethodFilter. It no longer uses bitflags (#​2073)
  • fixed: Fix bugs around merging routers with nested fallbacks (#​2096)
  • fixed: Fix .source() of composite rejections (#​2030)
  • fixed: Allow unreachable code in #[debug_handler] (#​2014)
  • change: axum's MSRV is now 1.66 (#​1882)
  • added: Implement IntoResponse for (R,) where R: IntoResponse (#​2143)
  • changed: For SSE, add space between field and value for compatibility (#​2149)
  • added: Add NestedPath extractor (#​1924)
  • added: Add handle_error function to existing ServiceExt trait (#​2235)
  • breaking: impl<T> IntoResponse(Parts) for Extension<T> now requires
    T: Clone, as that is required by the http crate (#​1882)
  • added: Add axum::Json::from_bytes (#​2244)
  • added: Implement FromRequestParts for http::request::Parts (#​2328)
  • added: Implement FromRequestParts for http::Extensions (#​2328)
  • fixed: Clearly document applying DefaultBodyLimit to individual routes (#​2157)
marshallpierce/rust-base64 (base64)

v0.22.0

Compare Source

  • DecodeSliceError::OutputSliceTooSmall is now conservative rather than precise. That is, the error will only occur if the decoded output cannot fit, meaning that Engine::decode_slice can now be used with exactly-sized output slices. As part of this, Engine::internal_decode now returns DecodeSliceError instead of DecodeError, but that is not expected to affect any external callers.
  • DecodeError::InvalidLength now refers specifically to the number of valid symbols being invalid (i.e. len % 4 == 1), rather than just the number of input bytes. This avoids confusing scenarios when based on interpretation you could make a case for either InvalidLength or InvalidByte being appropriate.
  • Decoding is somewhat faster (5-10%)
rust-cli/env_logger (env_logger)

v0.11.2

Compare Source

v0.11.1

Compare Source

Fixes
  • Allow styling with Target::Pipe

v0.11.0

Compare Source

Migration Guide

env_logger::fmt::Style:
The bespoke styling API, behind color, was removed, in favor of accepting any
ANSI styled string and adapting it to the target stream's capabilities.

Possible styling libraries include:

  • anstyle is a minimal, runtime string styling API and is re-exported as env_logger::fmt::style
  • owo-colors is a feature rich runtime string styling API
  • color-print for feature-rich compile-time styling API

custom_format.rs
uses anstyle via
Formatter::default_level_style

Breaking Change
  • Removed bespoke styling API
    • env_logger::fmt::Formatter::style
    • env_logger::fmt::Formatter::default_styled_level
    • env_logger::fmt::Style
    • env_logger::fmt::Color
    • env_logger::fmt::StyledValue
  • Removed env_logger::filter in favor of env_filter
Compatibility

MSRV changed to 1.71

Features
  • Automatically adapt ANSI escape codes in logged messages to the current terminal's capabilities
  • Add support for NO_COLOR and CLICOLOR_FORCE, see https://bixense.com/clicolors/
Fixes
  • Print colors when is_test(true)
rust-itertools/itertools (itertools)

v0.12.1

Compare Source

Added
  • Documented iteration order guarantee for Itertools::[tuple_]combinations (#​822)
  • Documented possible panic in iterate (#​842)
  • Implemented Clone and Debug for Diff (#​845)
  • Implemented Debug for WithPosition (#​859)
  • Implemented Eq for MinMaxResult (#​838)
  • Implemented From<EitherOrBoth<A, B>> for Option<Either<A, B>> (#​843)
  • Implemented PeekingNext for RepeatN (#​855)
Changed
  • Made CoalesceBy lazy (#​801)
  • Optimized Filter[Map]Ok::next, Itertools::partition, Unique[By]::next[_back] (#​818)
  • Optimized Itertools::find_position (#​837)
  • Optimized Positions::next[_back] (#​816)
  • Optimized ZipLongest::fold (#​854)
  • Relaxed Debug bounds for GroupingMapBy (#​860)
  • Specialized ExactlyOneError::fold (#​826)
  • Specialized Interleave[Shortest]::fold (#​849)
  • Specialized MultiPeek::fold (#​820)
  • Specialized PadUsing::[r]fold (#​825)
  • Specialized PeekNth::fold (#​824)
  • Specialized Positions::[r]fold (#​813)
  • Specialized PutBackN::fold (#​823)
  • Specialized RepeatN::[r]fold (#​821)
  • Specialized TakeWhileInclusive::fold (#​851)
  • Specialized ZipLongest::rfold (#​848)
Notable Internal Changes

v0.12.0

Compare Source

Breaking
  • Made take_while_inclusive consume iterator by value (#​709)
  • Added Clone bound to Unique (#​777)
Added
  • Added Itertools::try_len (#​723)
  • Added free function sort_unstable (#​796)
  • Added GroupMap::fold_with (#​778, #​785)
  • Added PeekNth::{peek_mut, peek_nth_mut} (#​716)
  • Added PeekNth::{next_if, next_if_eq} (#​734)
  • Added conversion into (Option<A>,Option<B>) to EitherOrBoth (#​713)
  • Added conversion from Either<A, B> to EitherOrBoth<A, B> (#​715)
  • Implemented ExactSizeIterator for Tuples (#​761)
  • Implemented ExactSizeIterator for (Circular)TupleWindows (#​752)
  • Made EitherOrBoth<T> a shorthand for EitherOrBoth<T, T> (#​719)
Changed
  • Added missing #[must_use] annotations on iterator adaptors (#​794)
  • Made Combinations lazy (#​795)
  • Made Intersperse(With) lazy (#​797)
  • Made Permutations lazy (#​793)
  • Made Product lazy (#​800)
  • Made TupleWindows lazy (#​602)
  • Specialized Combinations::{count, size_hint} (#​729)
  • Specialized CombinationsWithReplacement::{count, size_hint} (#​737)
  • Specialized Powerset::fold (#​765)
  • Specialized Powerset::count (#​735)
  • Specialized TupleCombinations::{count, size_hint} (#​763)
  • Specialized TupleCombinations::fold (#​775)
  • Specialized WhileSome::fold (#​780)
  • Specialized WithPosition::fold (#​772)
  • Specialized ZipLongest::fold (#​774)
  • Changed {min, max}_set* operations require alloc feature, instead of std (#​760)
  • Improved documentation of tree_fold1 (#​787)
  • Improved documentation of permutations (#​724)
  • Fixed typo in documentation of multiunzip (#​770)
Notable Internal Changes
paritytech/jsonrpsee (jsonrpsee)

v0.22.1

Compare Source

This is a small patch release that internally changes AtomicU64 to AtomicUsize
to support more targets.

[Fixed]
  • fix(docs): part of proc-macro documentation not rendering correctly in IDE (#​1294)
  • fix(client): change to AtomicU64 to AtomicUsize (#​1293)
  • fix(server): low-level API return err on WS handshake err (#​1288)

v0.22.0

Compare Source

Another breaking release where a new ResponsePayload type is introduced in order
to make it possible to determine whether a response has been processed.

Unfortunately, the IntoResponse trait was modified to enable that
and some minor changes were made to make more fields private to avoid further
breakage.

Example of the async ResponsePayload API
#[rpc(server)]
pub trait Api {
	#[method(name = "x")]
	fn x(&self) -> ResponsePayload<'static, String>;
}

impl RpcServer for () {
	fn x(&self) -> ResponsePayload<'static, String> {
		let (rp, rp_done) = ResponsePayload::success("ehheeheh".to_string()).notify_on_completion();

		tokio::spawn(async move {
			if rp_done.await.is_ok() {
				do_task_that_depend_x();
			}
		});

		rp
	}
}
Roadmap

We are getting closer to releasing jsonrpsee v1.0 and
the following work is planned:

  • Native async traits
  • Upgrade hyper to v1.0
  • Better subscription API for the client.

Thanks to the external contributor @​dan-starkware who contributed to this release.

[Added]
  • feat(server): add TowerService::on_session_close (#​1284)
  • feat(server): async API when Response has been processed. (#​1281)
[Changed]
  • client(error): make display impl less verbose (#​1283)
  • fix: allow application/json-rpc http content type (#​1277)
  • refactor(rpc_module): RpcModule::raw_json_request -> String (#​1287)

v0.21.0

Compare Source

This release contains big changes and let's go over the main ones:

JSON-RPC specific middleware

After getting plenty of feedback regarding a JSON-RPC specific middleware,
this release introduces a composable "tower-like" middleware that applies per JSON-RPC method call.
The new middleware also replaces the old RpcLogger which may break some use-cases, such as if
JSON-RPC was made on a WebSocket or HTTP transport, but it's possible to implement that by
using jsonrpsee as a tower service or the low-level server API.

An example how write such middleware:

#[derive(Clone)]
pub struct ModifyRequestIf<S>(S);

impl<'a, S> RpcServiceT<'a> for ModifyRequestIf<S>
where
	S: Send + Sync + RpcServiceT<'a>,
{
	type Future = S::Future;

	fn call(&self, mut req: Request<'a>) -> Self::Future {
		// Example how to modify the params in the call.
		if req.method == "say_hello" {
			// It's a bit awkward to create new params in the request
			// but this shows how to do it.
			let raw_value = serde_json::value::to_raw_value("myparams").unwrap();
			req.params = Some(StdCow::Owned(raw_value));
		}
		// Re-direct all calls that isn't `say_hello` to `say_goodbye`
		else if req.method != "say_hello" {
			req.method = "say_goodbye".into();
		}

		self.0.call(req)
	}
}

async fn run_server() {
	// Construct our middleware and build the server.
	let rpc_middleware = RpcServiceBuilder::new().layer_fn(|service| ModifyRequestIf(service));
	let server = Server::builder().set_rpc_middleware(rpc_middleware).build("127.0.0.1:0").await.unwrap();

	// Start the server.
	let mut module = RpcModule::new(());
	module.register_method("say_hello", |_, _| "lo").unwrap();
	module.register_method("say_goodbye", |_, _| "goodbye").unwrap();

	let handle = server.start(module);
	handle.stopped().await;
}
jsonrpsee server as a tower service

For users who want to get full control of the HTTP request, it's now possible to utilize jsonrpsee as a tower service
example here

jsonrpsee server low-level API

For users who want to get low-level access and for example to disconnect
misbehaving peers that is now possible as well example here

Logging in the server

Logging of RPC calls has been disabled by default,
but it's possible to enable that with the RPC logger middleware or provide
your own middleware for that.

let rpc_middleware = RpcServiceBuilder::new().rpc_logger(1024);
let server = Server::builder().set_rpc_middleware(rpc_middleware).build("127.0.0.1:0").await?;
WebSocket ping/pong API

The WebSocket ping/pong APIs have been refactored to be able
to disconnect inactive connections both by from the server and client-side.

Thanks to the external contributors @​oleonardolima
and @​venugopv who contributed to this release.

[Changed]
  • chore(deps): update tokio-rustls requirement from 0.24 to 0.25 (#​1256)
  • chore(deps): update gloo-net requirement from 0.4.0 to 0.5.0 (#​1260)
  • chore(deps): update async-lock requirement from 2.4 to 3.0 (#​1226)
  • chore(deps): update proc-macro-crate requirement from 1 to 2 (#​1211)
  • chore(deps): update console-subscriber requirement from 0.1.8 to 0.2.0 (#​1210)
  • refactor: split client and server errors (#​1122)
  • refactor(ws client): impl tokio:{AsyncRead, AsyncWrite} for EitherStream (#​1249)
  • refactor(http client): enable all http versions (#​1252)
  • refactor(server): change ws ping API (#​1248)
  • refactor(ws client): generic over data stream (#​1168)
  • refactor(client): unify ws ping/pong API with the server (#​1258
  • refactor: set tcp_nodelay == true by default ([#​1263])(https://github.com/paritytech/jsonrpsee/pull/1263)
[Added]
  • feat(client): add disconnect_reason API (#​1246)
  • feat(server): jsonrpsee as service and low-level API for more fine-grained API to disconnect peers etc (#​1224)
  • feat(server): JSON-RPC specific middleware (#​1215)
  • feat(middleware): add HostFilterLayer::disable (#​1213)
[Fixed]
  • fix(host filtering): support hosts with multiple ports (#​1227)
RazrFalcon/resvg (resvg)

v0.40.0

Compare Source

Added
  • usvg::Tree is Send + Sync compatible now.
  • usvg::WriteOptions::preserve_text to control how usvg generates an SVG.
  • usvg::Image::abs_bounding_box
Changed
  • All types in usvg are immutable now. Meaning that usvg::Tree cannot be modified
    after creation anymore.
  • All struct fields in usvg are private now. Use getters instead.
  • All usvg::Tree parsing methods require the fontdb argument now.
  • All defs children like gradients, patterns, clipPaths, masks and filters are guarantee
    to have a unique, non-empty ID.
  • All defs children like gradients, patterns, clipPaths, masks and filters are guarantee
    to have userSpaceOnUse units now. No objectBoundingBox units anymore.
  • usvg::Mask is allowed to have no children now.
  • Text nodes will not be parsed when the text build feature isn't enabled.
  • usvg::Tree::clip_paths, usvg::Tree::masks, usvg::Tree::filters returns
    a pre-collected slice of unique nodes now.
    It's no longer a closure and you do not have to deduplicate nodes by yourself.
  • usvg::filter::Primitive::x, y, width and height methods were replaced
    with usvg::filter::Primitive::rect.
  • Split usvg::Tree::paint_servers into usvg::Tree::linear_gradients,
    usvg::Tree::radial_gradients, usvg::Tree::patterns.
    All three returns pre-collected slices now.
  • A usvg::Path no longer can have an invalid bbox. Paths with an invalid bbox will be
    rejected during parsing.
  • All usvg methods that return bounding boxes return non-optional Rect now.
    No NonZeroRect as well.
  • usvg::Text::flattened returns &Group and not Option<&Group> now.
  • usvg::ImageHrefDataResolverFn and usvg::ImageHrefStringResolverFn
    require fontdb::Database argument.
  • All shared nodes are stored in Arc and not Rc<RefCell> now.
  • resvg::render_node now includes filters bounding box. Meaning that a node with a blur filter
    no longer be clipped.
  • Replace usvg::utils::view_box_to_transform with usvg::ViewBox::to_transform.
  • Rename usvg::XmlOptions into usvg::WriteOptions and embed xmlwriter::Options.
Removed
  • usvg::Tree::postprocess() and usvg::PostProcessingSteps. No longer needed.
  • usvg::ClipPath::units(), usvg::Mask::units(), usvg::Mask::content_units(),
    usvg::Filter::units(), usvg::Filter::content_units(), usvg::LinearGradient::units(),
    usvg::RadialGradient::units(), usvg::Pattern::units(), usvg::Pattern::content_units()
    and usvg::Paint::units(). They are always userSpaceOnUse now.
  • usvg::Units. No longer needed.
Fixed
  • Text bounding box is accounted during SVG size resolving.
    Previously, only paths and images were included.
  • Font selection when an italic font isn't explicitly marked as one.
  • Preserve image aspect ratio when only width or height are present.
    Thanks to @​LaurenzV.

v0.39.0

Compare Source

Added
  • font shorthand parsing.
    Thanks to @​LaurenzV.
  • usvg::Group::abs_bounding_box
  • usvg::Group::abs_stroke_bounding_box
  • usvg::Path::abs_bounding_box
  • usvg::Path::abs_stroke_bounding_box
  • usvg::Text::abs_bounding_box
  • usvg::Text::abs_stroke_bounding_box
Changed
  • All usvg-* crates merged into one. There is just the usvg crate now, as before.
Removed
  • usvg::Group::abs_bounding_box() method. It's a field now.
  • usvg::Group::abs_filters_bounding_box()
  • usvg::TreeParsing, usvg::TreePostProc and usvg::TreeWriting traits.
    They are no longer needed.
Fixed
  • font-family parsing.
    Thanks to @​LaurenzV.
  • Absolute bounding box calculation for paths.

v0.38.0

Compare Source

Added
  • Each usvg::Node stores its absolute transform now.
    Node::abs_transform() executes in constant time now.
  • usvg::Tree::calculate_bounding_boxes to calculate all bounding boxes beforehand.
  • usvg::Node::bounding_box which returns a precalculated node's bounding box in object coordinates.
  • usvg::Node::abs_bounding_box which returns a precalculated node's bounding box in canvas coordinates.
  • usvg::Node::stroke_bounding_box which returns a precalculated node's bounding box,
    including stroke, in object coordinates.
  • usvg::Node::abs_stroke_bounding_box which returns a precalculated node's bounding box,
    including stroke, in canvas coordinates.
  • (c-api) resvg_get_node_stroke_bbox
  • usvg::Node::filters_bounding_box
  • usvg::Node::abs_filters_bounding_box
  • usvg::Tree::postprocess
Changed
  • resvg renders usvg::Tree directly again. resvg::Tree is gone.
  • usvg no longer uses rctree for the nodes tree implementation.
    The tree is a regular enum now.
    • A caller no longer need to use the awkward *node.borrow().
    • No more panics on incorrect mutable Rc<RefCell> access.
    • Tree nodes respect tree's mutability rules. Before, one could mutate tree nodes when the tree
      itself is not mutable. Because Rc<RefCell> provides a shared mutable access.
  • Filters, clip paths, masks and patterns are stored as Rc<RefCell<T>> instead of Rc<T>.
    This is required for proper mutability since Node itself is no longer an Rc.
  • Rename usvg::NodeKind into usvg::Node.
  • Upgrade to Rust 2021 edition.
Removed
  • resvg::Tree. No longer needed. resvg can render usvg::Tree directly once again.
  • rctree::Node methods. The Node API is completely different now.
  • usvg::NodeExt. No longer needed.
  • usvg::Node::calculate_bbox. Use usvg::Node::abs_bounding_box instead.
  • usvg::Tree::convert_text. Use usvg::Tree::postprocess instead.
  • usvg::TreeTextToPath trait. No longer needed.
Fixed
  • Mark mask-type as a presentation attribute.
  • Do not show needless warnings when parsing some attributes.
  • feImage rendering with a non-default position.
    Thanks to @​LaurenzV.

v0.37.0

Compare Source

Added
  • usvg can write text back to SVG now.
    Thanks to @​LaurenzV.
  • --preserve-text flag to the usvg CLI tool.
    Thanks to @​LaurenzV.
  • Support transform-origin
    property.
    Thanks to @​LaurenzV.
  • Support non-default markers order via
    paint-order.
    Previously, only fill and stroke could have been swapped.
    Thanks to @​LaurenzV.
  • usvg_tree::Text::flattened that will contain a flattened/outlined text.
  • usvg_tree::Text::bounding_box. Will be set only after text flattening.
  • Optimize usvg_tree::NodeExt::abs_transform by storing absolute transforms in the tree
    instead of calculating them each time.
Changed
  • usvg_tree::Text::positions was replaced with usvg_tree::Text::dx and usvg_tree::Text::dy.

    usvg_tree::CharacterPosition::x and usvg_tree::CharacterPosition::y are gone.
    They were redundant and you should use usvg_tree::TextChunk::x
    and usvg_tree::TextChunk::y instead.
  • usvg_tree::LinearGradient::id and usvg_tree::RadialGradient::id are moved to
    usvg_tree::BaseGradient::id.
  • Do not generate element IDs during parsing. Previously, some elements like clipPaths
    and filters could have generated IDs, but it wasn't very reliable and mostly unnecessary.
    Renderer doesn't rely on them and usvg writer would generate them anyway.
  • Text-to-paths conversion via usvg_text_layout::Tree::convert_text no longer replaces
    original text elements with paths, but instead puts them into usvg_tree::Text::flattened.
Removed
  • The transform field from usvg_tree::Path, usvg_tree::Image and usvg_tree::Text.
    Only usvg_tree::Group can have it.

    It doesn't break anything, because those properties were never used before anyway.

    Thanks to @​LaurenzV.
  • usvg_tree::CharacterPosition
  • usvg_tree::Path::text_bbox. Use usvg_tree::Text::bounding_box instead.
  • usvg_text_layout::TextToPath trait for Text nodes.
    Only the whole tree can be converted at once.
Fixed
  • Path object bounding box calculation. We were using point bounds instead of tight contour bounds.
    Was broken since v0.34
  • Convert text-to-paths in embedded SVGs as well. The one inside the Image node.
    Thanks to @​LaurenzV.
  • Indirect text-decoration resolving in some cases.
    Thanks to @​LaurenzV.
  • (usvg) Clip paths writing to SVG.
    Thanks to @​LaurenzV.

Configuration

📅 Schedule: Branch creation - "after 3am on Wednesday" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Never, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot requested a review from a team as a code owner November 15, 2023 07:54
@renovate renovate bot added the type: chore label Nov 15, 2023
@renovate renovate bot force-pushed the renovate/dev-alltauricli branch from e608ddb to 07bb89b Compare March 3, 2024 13:12
@lucasfernog lucasfernog merged commit b4ffbe7 into dev Mar 3, 2024
13 checks passed
@lucasfernog lucasfernog deleted the renovate/dev-alltauricli branch March 3, 2024 14:36
Copy link
Contributor Author

renovate bot commented Mar 3, 2024

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

Warning: custom changes will be lost.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant