-
-
Notifications
You must be signed in to change notification settings - Fork 383
Cleanup nested attributes (docs, validation, shared_attributes, updating, infrastructure)
#5620
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
Open
ffreyer
wants to merge
54
commits into
ff/breaking-0.25
Choose a base branch
from
ff/nested-attributes
base: ff/breaking-0.25
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
54 commits
Select commit
Hold shift + click to select a range
01935e5
minor cleanup
ffreyer b1d4c51
generalize NestedSearchTree for reuse
ffreyer 22bb694
set up nested DocumentedAttributes with `@attributes` blocks
ffreyer ad07b6c
update `@recipe` docs
ffreyer 418ab9c
cleanup unused code
ffreyer c32ce77
allow `fonts` to be a Dict
ffreyer 5d7206e
make DocumentedAttributes more Dict-like
ffreyer 0186308
add `NoFallback` to allow `nothing` as a fallback (for safety)
ffreyer fc0f96a
fix multiple layers of nested attributes becoming self referential
ffreyer 1cb2521
convert old `@recipe` attributes to DocumentedAttributes & add depwarn
ffreyer abd46fc
update validation
ffreyer c58f548
simplify nested attribute init in plots
ffreyer 666881a
adjust setproperty of plots to merge nested attributes
ffreyer d476955
update attribute docs
ffreyer 1c77c77
update shared_attributes
ffreyer f552076
fix errors
ffreyer 445943f
Merge branch 'ff/breaking-0.25' into ff/nested-attributes
ffreyer d83af6c
add types to attribute parsing
ffreyer 1d14916
allow `Inherit` to be recursive
ffreyer a1a0ee7
refactor blocks to use DocumentedAttributes
ffreyer 5df9f6a
some cleanup
ffreyer 737200e
fixes
ffreyer cd6d2d0
add nesting of Inherit and callback support
ffreyer 8ac7ec7
guard against defaultfont()
ffreyer aa86604
fixes
ffreyer 33b641a
fix recipe usage outside of Makie?
ffreyer 62bd6d4
Merge branch 'ff/breaking-0.25' into ff/nested-attributes
ffreyer 4ff557e
remove doc utils for old recipes
ffreyer 7312e75
update nested attribute merging for `ComputeGraph` passthrough
ffreyer ec7c13a
fix incomplete implementations of newer LegendElement types
ffreyer 3bccfd5
remove LegendOverride wrapper, simplify apply_legend_override, fix Le…
ffreyer 5be7cc1
refactor Legend to not overwrite Block constructor
ffreyer d6c943e
merge resolve_inherit into lookup_default (cleanup)
ffreyer 19ed77e
specapi: add BlockSpec args, update Legend, refactor for nested Attri…
ffreyer 896cbb5
some cleanup cleanup
ffreyer 5794f46
cleanup DocumentedAttributes (new file, reuse code, add docs)
ffreyer 45c658f
try optimize
ffreyer e423aad
add MetaAttributes (optimize attribute init)
ffreyer 2446a6b
add tests for `@recipe`, `@Block` codegen w/ nested attributes
ffreyer 982e573
cleanup
ffreyer b66da3c
rely on MetaAttributes infrastructure
ffreyer 2acb0e8
don't fall back on global themes
ffreyer 1a44089
parse MetaAttributes directly
ffreyer 102c29e
print more nicely
ffreyer d8fe8a5
replace DocumentedAttribute and document new code
ffreyer 219e797
fix Makie tests
ffreyer 874fb4c
cleanup dead code, typos, formatting, docs fix
ffreyer 39bee6b
update old recipes
ffreyer 27ab921
fix cycle init
ffreyer e5108a9
finish DocumentedAttributes docstring
ffreyer 110d978
update changelog
ffreyer a46f5d6
fix & test `plot.outer = Attributes(...)` for nested updates
ffreyer abb43a7
some more performance tweaks
ffreyer 0f0ae76
fix test
ffreyer File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For context,
validate_node_value(value)causes type inference which costs about 2µs of ~45µs total in@benchmark scatter!(scene, 1:5) setup=(scene = Scene()).Iirc I added this initially to make sure
add_input!()is going down the correct paths. Under normal usage it should never trigger. The calls inComputedare never reached.