I'm moving from BaconJS where this isn't an issue because you can just return Bacon.noMore
in the subscriber to unsubscribe. In Kefir, unsubscribing is more boilerplate and so the natural question is---for streams that end, do you need to unsubscribe the listener (aka callback) or does Kefir handle that for you automagically?
const oneTimeStream = Kefir.constant('foo') // this ends after firing foo
const listener = function() { //... }
oneTimeStream.onValue(listener)
// do I need to unsubscribe #listener?