Add Preferences to control defaults #74
Draft
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 uses Preferences.jl to set defaults for:
ci_kindci_probweights_methodThe goal is to mirror Python ArviZ's use of RcParams for deeply customizing defaults used in stats functions and plots, with the key difference that in Python one can use a context manager to modify these preferences interactively, whereas in Julia these should be set for a project using
LocalPreferences.tomlbefore launching an interactive session for analysis. As a result, this is primarily useful for project-wide settings (e.g. a user prefers HDI over ETI and wants a different CI probability everywhere). A secondary goal is that dependent packages (e.g. MCMCChains/InferenceObjects) can then access these preferences when setting keyword arguments a little more safely than just copying over our defaults.At the moment this is a proof-of-concept I'll keep as a draft until I receive user/dependant-dev feedback on whether this is sufficiently useful to merge.