Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
c61695d
refactor LineAxis, Axis to ComputeGraph
ffreyer Mar 3, 2026
92b7824
don't run initialize_block! twice in precompile
ffreyer Mar 3, 2026
ec18f86
deal with nothing
ffreyer Mar 3, 2026
1bfebb5
fix some stuff
ffreyer Mar 3, 2026
1c94ba5
run benchmark too
ffreyer Mar 3, 2026
c0a35ef
fix recursive Observable updates discarding notifies
ffreyer Mar 5, 2026
4819fb7
more locks for safety
ffreyer Mar 5, 2026
342e24a
fix GLMakie not updating on just plot insertion
ffreyer Mar 5, 2026
92ebaac
Add set_type!()
ffreyer Mar 5, 2026
6b82e4a
add flag to force updates to propagate in Inputs
ffreyer Mar 5, 2026
32f20fb
add ExplicitUpdate wrapper to overwrite update propagation behavior
ffreyer Mar 5, 2026
3966c65
improve some errors
ffreyer Mar 5, 2026
6d1f580
allow Block attribute init to be extended
ffreyer Mar 5, 2026
41a924b
split up scenearea node so it's usable with computations
ffreyer Mar 5, 2026
ec82612
move limits to compute graph
ffreyer Mar 5, 2026
9126fc7
minor test fixes
ffreyer Mar 5, 2026
8f568e2
guard against infinite recursion in axislinks
ffreyer Mar 6, 2026
12af95b
fix incorrect bbox in protrusions
ffreyer Mar 6, 2026
7406273
fix dim converts
ffreyer Mar 6, 2026
d677ee2
fix linked layout spec not initializing links
ffreyer Mar 6, 2026
92b8c07
fix axis label translation
ffreyer Mar 6, 2026
b0a9808
fix recursion loop in Colorbar protrusion
ffreyer Mar 6, 2026
3102d98
minor test cleanup
ffreyer Mar 6, 2026
b278fab
default linked axes in SpecApi to limit union
ffreyer Mar 6, 2026
d96ac7b
fix autolimits with linked axes (same value reset)
ffreyer Mar 6, 2026
2cefe4d
remove not yet defined type
ffreyer Mar 6, 2026
4c92a27
fix type to Float64
ffreyer Mar 6, 2026
5555cac
fix type in test
ffreyer Mar 6, 2026
2edd52a
fix some things that were probably wrong
ffreyer Mar 7, 2026
0bca72d
reorder code to skip an Observable
ffreyer Mar 7, 2026
ebec5aa
cleanup leftover Observables in LineAxis
ffreyer Mar 7, 2026
13b6774
more LineAxis cleanup, update tight_ticklabel_spacing!()
ffreyer Mar 7, 2026
1d61ed7
avoid checking boundingboxes for each dimension
ffreyer Mar 7, 2026
b191501
fix 0 width limits limits
ffreyer Mar 8, 2026
fed3e3b
allow mark_dirty!() to exit early by having mark_resolved!() resolve …
ffreyer Mar 8, 2026
1e50bf1
avoid recursive lock, use `@lock`
ffreyer Mar 8, 2026
06633db
move old reset_limits to Axis3
ffreyer Mar 8, 2026
35e6716
fix autolimits, same value reset in Axis3
ffreyer Mar 8, 2026
73d9e1d
fix `set_type!()` for inputs
ffreyer Mar 8, 2026
5fe3825
fix PolarAxis autolimits/same value limit resets
ffreyer Mar 8, 2026
1ba0014
minor cleanup
ffreyer Mar 8, 2026
d2bac7f
benchmark against breaking
ffreyer Mar 8, 2026
b3330ce
convenience + docstrings for forced_update and ExplicitUpdate
ffreyer Mar 8, 2026
92aa9ad
test forced_update, ExplicitUpdate, set_type!()
ffreyer Mar 8, 2026
195832c
improve and test recursively connected Observable handling
ffreyer Mar 8, 2026
ab77d68
format
ffreyer Mar 8, 2026
dd8ad51
restore xlims!()/ylims!()/limits!() setting linked axis limits
ffreyer Mar 8, 2026
a4df73d
don't trigger two updates when calling limits!()
ffreyer Mar 8, 2026
922810d
fix limit errors
ffreyer Mar 8, 2026
8d67326
more compute docs
ffreyer Mar 9, 2026
39ed48d
update changelog
ffreyer Mar 9, 2026
b1ca21c
fix categorical update tests?
ffreyer Mar 9, 2026
2efd327
Merge branch 'ff/breaking-0.25' into ff/compute-blocks
ffreyer Mar 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/compilation-benchmark.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:
- '*.md'
branches:
- master
- ff/render_pipeline_master
- ff/breaking-0.25

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,18 @@
- Reworked `Block/@Block` infrastructure to support complex/block recipes. The infrastructure mostly mirrors the `@recipe` infrastructure from plots: [#5465](https://github.com/MakieOrg/Makie.jl/pull/5465)
- The names (and types) of converted arguments can be defined in `@Block MyBlock (arg1::Vector, arg2)`.
- Like traditional blocks, attributes are defined in a `@attribute begin ... end` block within `@Block`. Names defined outside this will be added as fields instead.
- `convert_arguments(::Type{MyBlock}, args...)` can be defined as a conversion between user passed arguments and converted arugments. Note that blocks are not parametric types so `<:MyBlock` is not needed

Check failure on line 23 in CHANGELOG.md

View workflow job for this annotation

GitHub Actions / check

arugments ==> arguments
- Similarly `conversion_trait(::Type{MyBlock})` can also be defined
- Attribute converts rely on methods of `(::BlockAttributeConvert{Type}(name::Symbol, user_input))`.
- `initialize_block!(b::MyBlock)` is used to initialize the recipe with blocks and plots analogously to `plot!(p::MyPlot)`. The parent block `b::MyBlock` should be treated like a figure here, e.g. `Axis(b[1, 1])`
- After defining the block, it can be added to a figure like any other block `mb = MyBlock(fig[1, 1])`.
- The blocks within `MyBlock` can be accessed via the layout `mb.layout`, `mb.blocks` or `mb[i, j]`.
- Refactored `Axis` to use the compute graph [#5546](https://github.com/MakieOrg/Makie.jl/pull/5546)
- **minor breaking** Custom interactions that manipulated `ax.targetlimits` should now update `ax.localxlimits` and `ax.localylimits` instead and read from either `ax.targetlimits` or `sharedxlimits` and `sharedylimits`. Otherwise they will not correctly update linked axes.
- Redisplaying a figure after emptying an axis now resets its limits if they aren't set to specific values.
- Fixed an issue where Observable outputs of compute nodes that cycle back into the compute graph could discard updates of other Observable outputs. [#5546](https://github.com/MakieOrg/Makie.jl/pull/5546)
- Added `ComputePipeline.set_type!(node, type)` for initializing the type of a compute graph node [#5546](https://github.com/MakieOrg/Makie.jl/pull/5546)
- Added `ExplicitUpdate` wrapper to control update propagation for computations in the compute graph. Also added an option for forcefully propagate updates from input nodes. [#5546](https://github.com/MakieOrg/Makie.jl/pull/5546)

## Unreleased

Expand Down
Loading
Loading