Skip to content

Bump LiveChartsCore.SkiaSharpView.WPF from 2.0.0-rc5.4 to 2.0.5#161

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/Smart-Client-Plugins/MetadataDisplay/LiveChartsCore.SkiaSharpView.WPF-2.0.5
Open

Bump LiveChartsCore.SkiaSharpView.WPF from 2.0.0-rc5.4 to 2.0.5#161
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/Smart-Client-Plugins/MetadataDisplay/LiveChartsCore.SkiaSharpView.WPF-2.0.5

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 1, 2026

Copy link
Copy Markdown
Contributor

Updated LiveChartsCore.SkiaSharpView.WPF from 2.0.0-rc5.4 to 2.0.5.

Release notes

Sourced from LiveChartsCore.SkiaSharpView.WPF's releases.

2.0.4

The first weeks after 2.0.0 were focused on one thing: working through the issue backlog that built up during the long
beta / rc cycle. These four patch releases bring the project to its lowest open-issue count in years — more than 40
reported issues fixed across every supported platform, with no behavioral changes to the public API shipped in 2.0.0.

If you're on 2.0.0 you can drop 2.0.4 straight in: same APIs, same defaults, just fewer bugs.

Highlights:

  • Long-standing rendering fixes on Avalonia, WPF, WinUI, MAUI, Blazor, WinForms and Mac Catalyst — each platform had
    at least one pinned report cleared in this round.
  • A handful of chart-engine corrections that were hard to reach without the breadth of the 2.0 redesign:
    stacked-series z-index baseline, gauge tight-bounds collapse, axis pin preserved under zoom, null-gap line rendering
    on inserts/resize, mixed-sign stacking, a MinSeparators floor, granular pan/zoom flags, and runtime AnimationsSpeed
    propagation.
  • New cross-platform regression coverage in tests/SnapshotTests/ and tests/UITests/ (Factos) so the harder-to-test
    bugs — z-order, theme inheritance, pointer-capture loss, tab/scroll mount cycles — won't regress silently.

Fixes

Core / chart engine

  • #​1419 — Multi X-axis InLine axes overlap
  • #​1511 — HeatSeries fractional-step auto-sizing
  • #​1533 — Sections freeze on fast drag (Scaler infinity leak)
  • #​1576 — Lost-capture leaves drag armed (WPF / Avalonia / WinUI / Uno-Skia)
  • #​1826 — Null Labels crash & silent throttler swallow
  • #​1847 — NaN / Infinity handling (docs, recipes, snapshot tests)
  • #​1856 — Visual / VisualElement ZIndex honored
  • #​1923 — Stacked-series ZIndex baseline (replaces the 1000 - Position workaround)
  • #​1926 — Runtime AnimationsSpeed mutations propagate without recreating series
  • #​1957 — Mobile pan vs. tooltip conflict (5 px pan-engagement deadzone)
  • #​1970 — Zombie shapes after Values shrink (regression coverage)
  • #​1978 — DrawMarginFrame.Fill drawn under series
  • #​2054 — Invisible-series legend NRE
  • #​2064 — Line marker inherits user Stroke
  • #​2071 — MinSeparators floor for sparse axes
  • #​2124 — DrawnLabelVisual.Label read-only getter
  • #​2131 — PieChart gauge collapse on tight bounds (two rounds: max-value clamp + pushout-bounds split)
  • #​2132 / #​2083 — Null-gap line rendering on inserts and resize
  • #​2152 / #​2073 — Stacker correctness for mixed positive / negative values
  • #​2159 — Zoom no longer overwrites pinned MinLimit / MaxLimit
  • #​2165 — RectangleHoverArea hit-test with negative width / height
  • #​2175 / #​2119 — Granular PanX / PanY / ZoomX / ZoomY flags + NoFit honored
  • #​2216 — Ticker DisposeTicker null-deref hardening

GeoMap

  • #​962 — Series swap no longer blanks shared lands
  • #​1417 — Detach / reattach lifecycle (tab and scroll mount cycles)
  • #​1426 — Custom GeoJSON import (Polygon / MultiPolygon, non-string properties, missing keys)

... (truncated)

2.0.0

It has been a long journey to build a charting library that works seamlessly across all .NET UI frameworks. Today, we’re excited to announce the first stable release of the library.

This release doesn’t introduce new features; instead, the focus has been entirely on stability. More than 150 new tests have been added to ensure the library remains reliable well into the future.

What’s next for the library?

There are many excellent charting libraries available, but LiveCharts was created to help developers build stunning, modern UIs. At the moment, there are no examples or showcases that truly demonstrate the library’s full potential—so that’s what’s coming next. Expect new examples that highlight what LiveCharts can really do.

What's Changed

New Contributors

Full Changelog: Live-Charts/LiveCharts2@v2.0.0-rc6...2.0.0

2.0.0-rc6

After months of deep work and iteration, this release is finally here. There is XAML and hot reload support, reworked rendering for serious performance gains, and leaned hard into source generation to clean up and future-proof the codebase. Oh, and yes: LiveCharts is now AOT-friendly. It’s faster, cleaner, and more flexible than ever.

Seamless XAML Integration via Source Generators

LiveCharts now uses a powerful source generator that automatically transforms chart objects into designer-friendly UI components. For example, the generic LineSeries now has a corresponding XamlLineSeries class—part of a new naming convention where all UI-bound types are prefixed with Xaml. These components support data bindings, themes, hot reload, and full design-time integration:

xaml

This update dramatically improves the chart design experience. You can now fully style your charts using pure XAML, including theme support—no more ViewModel hacks or SkiaSharp dependencies just to customize visuals. In previous versions, UI customization often required logic in the ViewModel, which led to tightly coupled and less maintainable code. That’s now a thing of the past.

Documentation for XAML platforms has been fully updated (thanks, Copilot!) to showcase the new syntax. While the new XAML-first approach is recommended, the legacy syntax remains supported for backward compatibility.

On non-XAML platforms, MVVM usage has been phased out from examples across the site and repo, reflecting a cleaner, more platform-native approach.

Rendering is significantly faster

The rendering pipeline has undergone a deep overhaul. LiveCharts now manages SkiaSharp resources far more efficiently, with cleaner, hardware-accelerated implementations and tight synchronization with the OS screen refresh rate. We've also added custom integrations for UI frameworks—most notably, full support for the Uno Skia renderer.

SkiaSharp shaders, paints, and text blobs are now cached wherever possible, resulting in dramatically faster rendering times, smoother animations, and reduced resource consumption across the board.

Previously, LiveCharts relied on a fixed render loop that invalidated the control every ~16ms to simulate a 60 FPS refresh rate. While functional, this approach forced redraws regardless of whether the system was ready to display them. Now, rendering is fully delegated to the OS or UI framework. For example:

  • On Blazor, we use requestAnimationFrame()
  • On iOS*, CADDisplayLink
  • On Android*, Choreographer
  • On Uno Skia, a fully integrated render mode

This shift gives LiveCharts precise control over when and how frames are drawn—resulting in better performance and smoother visuals across platforms.

While it's hard to quantify the full performance gains (older versions lacked the benchmarking tools introduced in this release), the difference is substantial. Benchmarks in #​1915 and #​1936 offer a glimpse, but real-world usage shows even greater improvements.

As a bonus, there's now a "low-ish level" sample that removes the SkiaSharp dependency entirely—using Direct2D via Vortice—while still reusing 99% of the charting logic. This opens the door to even more rendering flexibility in the future.

Smarter Architecture with Source Generators

While this is an internal feature, it deserves the spotlight—because it radically simplifies how LiveCharts is built and maintained.

The library now uses a unified codebase, and a source generator automatically transforms core chart components into UI controls tailored for each supported framework. This means we write the logic once, and the generator handles the rest.

In previous versions, adding a new property to a chart control was a tedious, error-prone process. You had to manually define:

  • An AvaloniaProperty for Avalonia
  • A DependencyProperty for WPF
  • A BindableProperty for MAUI
  • Another DependencyProperty for WinUI (which behaves differently than WPF’s)
  • Now Blazor, WinForm and Eto use regular properties.

It was repetitive, fragile, and frankly exhausting.

Now? It’s magical. The generator takes care of all the boilerplate, translating properties and control logic across frameworks automatically. The result: a cleaner, more maintainable codebase—and a much more enjoyable development experience.
... (truncated)

Commits viewable in compare view.

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

---
updated-dependencies:
- dependency-name: LiveChartsCore.SkiaSharpView.WPF
  dependency-version: 2.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added .NET Pull requests that update .NET code dependencies Pull requests that update a dependency file labels Jul 1, 2026
@dependabot dependabot Bot requested a review from Cacsjep as a code owner July 1, 2026 05:49
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file .NET Pull requests that update .NET code labels Jul 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file .NET Pull requests that update .NET code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants