Skip to content

Migrate to new FutureSDR/slint APIs and rasterize plot SVG ourselves#3

Open
JuliDi wants to merge 1 commit into
mainfrom
julian/bump-dependencies
Open

Migrate to new FutureSDR/slint APIs and rasterize plot SVG ourselves#3
JuliDi wants to merge 1 commit into
mainfrom
julian/bump-dependencies

Conversation

@JuliDi
Copy link
Copy Markdown
Member

@JuliDi JuliDi commented May 6, 2026

  • Adopt FutureSDR's #[derive(Block)] kernel model: AdditiveNoise and ChannelSink use #[input]/#[output] fields, message handlers declared via #[message_inputs], and the flowgraph driver moves to the new prelude + RunningFlowgraph::call/stop_and_wait. The old per-edge Slab::with_config syntax is gone; default buffers replace it.
  • slint 1.16 pulls in fontique 0.8 transitively, but plotters' global yeslogic-fontconfig-sys/dlopen breaks fontique's non-dlopen symbol imports. Re-route through i-slint-common's fontconfig-dlopen feature so the unification matches.
  • slint's Image::load_from_svg_data parses with usvg::Options::default() (empty fontdb) and silently drops , so axis labels disappeared. Parse the plotters SVG ourselves with resvg/usvg using a fontdb populated from system fonts, render via tiny_skia, and hand slint a finished bitmap.
  • Add justfile and reference its recipes from the README.

- Adopt FutureSDR's #[derive(Block)] kernel model: AdditiveNoise and
  ChannelSink use #[input]/#[output] fields, message handlers declared
  via #[message_inputs], and the flowgraph driver moves to the new
  prelude + RunningFlowgraph::call/stop_and_wait. The old per-edge
  Slab::with_config syntax is gone; default buffers replace it.
- slint 1.16 pulls in fontique 0.8 transitively, but plotters' global
  yeslogic-fontconfig-sys/dlopen breaks fontique's non-dlopen symbol
  imports. Re-route through i-slint-common's fontconfig-dlopen feature
  so the unification matches.
- slint's Image::load_from_svg_data parses with usvg::Options::default()
  (empty fontdb) and silently drops <text>, so axis labels disappeared.
  Parse the plotters SVG ourselves with resvg/usvg using a fontdb
  populated from system fonts, render via tiny_skia, and hand slint a
  finished bitmap.
- Add justfile and reference its recipes from the README.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@JuliDi JuliDi self-assigned this May 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant