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.
This PR refactors
<perspective-viewer>to move some engine configuration from compile-time to run-time (via an elaboratedClient::get_featurescall), which in the future may make it easier to implement alternative engines. Perspective enables all features by default and there is no public API to disable them, so this change is mostly UX transparent (except as noted):Aggregates function names and filter operators have been moved to
Client::get_features.Table::validate_expressionshas been gated behind theexpressionsfeature, as has the expression UI."filter", "sort", "split_by" and "group_by" UI have been conditioned on
Client::get_featuresnamed after theirconfigproperty names.Real-time notifications have been conditioned on the
on_updatefeature.Minor breaking change - the format of
Client::get_featureshas been changed. However, only new keys have been added ("aggregates", "filter_ops" and "on_update" and "sort")and I suspect this method to be rarely (if ever) used outside ofperspective-vieweritself.Minor breaking change - the config format for multi-argument aggregates
weighted mean,max byandmin byhas been changed, old:New:
This is necessary to allow 3+ parameter aggregates.