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
Track expression dependencies #2113
Conversation
d24be66
to
c8dc9cc
Compare
Bloaty Results (iOS) 🐋Compared to main
Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results-ios/pr-2113-compared-to-main.txt |
Bloaty Results 🐋Compared to main
Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results/pr-2113-compared-to-main.txtCompared to d387090 (legacy)
Full report: https://maplibre-native.s3.eu-central-1.amazonaws.com/bloaty-results/pr-2113-compared-to-legacy.txt |
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.
Could you add tests?
…et `useLogThread(false)`. Add context for better messages on parsing test failures.
Add `Feature` dependency to match `isFeatureConstant` returning false on `FormatSectionOverride.
fix locale comparison bug
Done. I also expanded some existing test cases, as modifications to some areas with low coverage brought the average way down. |
When building expression trees, we assign and capture what categories of input they depend on, like feature data and zoom level.
When evaluating whether to update a layer, zoom changes only trigger an update if zoom is used in an expression somewhere within the style.
I discovered that the benchmarking I was doing was thrown off by some local changes lingering in my workspace, so I'm re-evaluating...
deps:
Mean encoding: 2.6177
main:
Mean encoding: 2.6692
Difference: 1.95%