-
Notifications
You must be signed in to change notification settings - Fork 32
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
Release 0.35: Remove Selectors #779
base: master
Are you sure you want to change the base?
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #779 +/- ##
==========================================
- Coverage 86.17% 84.60% -1.58%
==========================================
Files 36 34 -2
Lines 4305 3832 -473
==========================================
- Hits 3710 3242 -468
+ Misses 595 590 -5 ☔ View full report in Codecov by Sentry. |
Pull Request Test Coverage Report for Build 13530836280Details
💛 - Coveralls |
* Reverse order of prefixing * Simplify generated function (the non-generated path wasn't being used) * Expand on submodel behaviour in changelog
* Remove selector stuff from varinfo tests * Implement link and invlink for varnames rather than samplers * Replace set_retained_vns_del_by_spl! with set_retained_vns_del! * Make linking tests more extensive * Remove sampler indexing from link methods (but not invlink) * Remove indexing by samplers from invlink * Work towards removing sampler indexing with StaticTransformation * Fix invlink/link for TypedVarInfo and StaticTransformation * Fix a test in models.jl * Move some functions to utils.jl, add tests and docstrings * Fix a docstring typo * Various simplification to link/invlink * Improve a docstring * Style improvements * Fix broken link/invlink dispatch cascade for VectorVarInfo * Fix some more broken dispatch cascades * Apply suggestions from code review Co-authored-by: Xianda Sun <[email protected]> * Remove comments that messed with docstrings * Apply suggestions from code review Co-authored-by: Penelope Yong <[email protected]> * Fix issues surfaced in code review * Simplify link/invlink arguments * Fix a bug in unflatten VarNamedVector * Rename VarNameCollection -> VarNameTuple * Remove test of a removed varname_namedtuple method * Apply suggestions from code review Co-authored-by: Penelope Yong <[email protected]> * Respond to review feedback * Remove _default_sampler and a dead argument of maybe_invlink_before_eval * Fix a typo in a comment * Add HISTORY entry, fix one set_retained_vns_del! method --------- Co-authored-by: Xianda Sun <[email protected]> Co-authored-by: Penelope Yong <[email protected]>
* Remove selector stuff from varinfo tests * Implement link and invlink for varnames rather than samplers * Replace set_retained_vns_del_by_spl! with set_retained_vns_del! * Make linking tests more extensive * Remove sampler indexing from link methods (but not invlink) * Remove indexing by samplers from invlink * Work towards removing sampler indexing with StaticTransformation * Fix invlink/link for TypedVarInfo and StaticTransformation * Fix a test in models.jl * Move some functions to utils.jl, add tests and docstrings * Fix a docstring typo * Various simplification to link/invlink * Improve a docstring * Style improvements * Fix broken link/invlink dispatch cascade for VectorVarInfo * Fix some more broken dispatch cascades * Apply suggestions from code review Co-authored-by: Xianda Sun <[email protected]> * Remove comments that messed with docstrings * Apply suggestions from code review Co-authored-by: Penelope Yong <[email protected]> * Fix issues surfaced in code review * Simplify link/invlink arguments * Fix a bug in unflatten VarNamedVector * Rename VarNameCollection -> VarNameTuple * Remove test of a removed varname_namedtuple method * Apply suggestions from code review Co-authored-by: Penelope Yong <[email protected]> * Respond to review feedback * Remove _default_sampler and a dead argument of maybe_invlink_before_eval * Fix a typo in a comment * Add HISTORY entry, fix one set_retained_vns_del! method * Remove some VarInfo getindex with samplers stuff * Remove some index setting with samplers * Remove more sampler indexing * Remove unflatten with samplers * Clean up some setindex stuff * Remove a bunch of varinfo.jl internal functions that used samplers/space, update HISTORY.md * Fix HISTORY.md * Miscalleanous small fixes * Fix a bug in VarInfo constructor * Fix getparams(::LogDensityFunction) * Apply suggestions from code review Co-authored-by: Penelope Yong <[email protected]> --------- Co-authored-by: Xianda Sun <[email protected]> Co-authored-by: Penelope Yong <[email protected]>
* Remove Selectors and Gibbs IDs * Remove getspace * Remove a dead VNV method --------- Co-authored-by: Xianda Sun <[email protected]>
* Refactor dot_tilde, work in progress * Restrict dot_tilde to univariate dists on the RHS * Remove tests with multivariates or arrays as RHS of .~ * emove dot_tilde pipeline * Fix a .~ bug * Update HISTORY.md * Fix a tiny test bug * Re-enable some SimpleVarInfo tests * Improve changelog entry * Improve error message * Fix trivial typos * Fix pointwise_logdensity test * Remove pointless check_dot_tilde_rhs method * Add tests for old .~ syntax * Bump Mooncake patch version to v0.4.90 * Bump Mooncake to 0.4.95 --------- Co-authored-by: Penelope Yong <[email protected]>
* Remove LogDensityProblemsAD * Implement LogDensityFunctionWithGrad in place of ADgradient * Dynamically decide whether to use closure vs constant * Combine LogDensityFunction{,WithGrad} into one (#811) * Warn if unsupported AD type is used * Update changelog * Update DI compat bound Co-authored-by: Guillaume Dalle <[email protected]> * Don't store with_closure inside LogDensityFunction Co-authored-by: Guillaume Dalle <[email protected]> * setadtype --> LogDensityFunction * Re-add ForwardDiffExt (including tests) * Add more tests for coverage --------- Co-authored-by: Guillaume Dalle <[email protected]>
This PR, and release v0.35 could be ready to go. It ended up involving removing samplers from There's a companion PR for Turing.jl, TuringLang/Turing.jl#2488, that makes the corresponding changes in that repo, and it's very nearly passing tests, so we seem good on that front. I would propose doing a non-squash merge of this PR, because the individual commits here already come from substantial PRs themselves, and squashing them into one megacommit would make bisecting a nightmare. |
Maybe we could squeeze in exporting LogDensityFunction? #816 I reckon it makes sense given the changes to its interface I can do a quick PR tomorrow |
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.
Thanks @mhauru, @penelopeysm and @sunxd3 -- excellent improvements!
@@ -5,6 +5,7 @@ on: | |||
branches: | |||
- master | |||
- backport-* | |||
- release-0.35 |
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.
- release-0.35 |
@@ -447,10 +440,8 @@ DynamicPPL.Experimental.is_suitable_varinfo | |||
|
|||
```@docs | |||
tilde_assume | |||
dot_tilde_assume |
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.
It's good to see these gone!
This PR will collect all work related to removing
Selector
s, Gibbs IDs, and indexingVarInfo
with samplers. Since this will involve quite a lot of changes, we'll try a new pattern for code review: Changes will be made incrementally, trying to remove parts of the functionality at a time and getting tests to pass in between. Each such incremental change will be its own PR into this branch,release-0.35
. Careful code review will be done at that stage. By the end of it this PR will probably be massive, and heavily breaking, but that can all then go intomaster
with only a light, final review.Issue(s) closed
Closes #786
Unblock #771: the dependency on LogDensityProblemAD has been replaced by LogDensityFunction.