About two years ago, just after migrating my CatchUp side project to RxJava 2, I started a branch called “boundObservers” to try out an idea I had for RxLifecycle-style automatic disposal of streams. I rewrote it from scratch a few times after, and a couple months later we had pulled