
Duncan Coutts wrote:
So by arguing for new features in minor releases we're saying we should have a 4-6 week cycle. New library features every 6 weeks.
Thanks for putting some numbers on that. (and, yikes! I'm convinced. I was under the impression that there'd be fewer minor releases than that.)
Now perhaps 12 months is too long (I think it is). Perhaps 6 months is too long even (though many other groups have settled on 6 months). But surely 6 weeks is far too short. That means essentially no synchronisation effect at all.
If the majority opinion is that 6 months is too long to wait for new features, then how about 4 months, or even 3? Do people see the point I'm trying to make about the value of synchronisation?
I think that, given the rate of change in the Haskell world, 12 months is far too long. And I agree that a big part of the platform should be to provide synchronization, for which 6 weeks isn't enough. In choosing between 3, 4, or 6 months (for 4, 3, and 2 times per year) I think there's a balance that needs to be struck for the platform to be useful to users. If updates are too few and too far between (as has historically been the case), then active users will update the packages individually, thus defeating the point of the platform. On the other side of things, synchronicity. Of those three options, I think 4 months is probably ideal. Quarterly releases still don't give much time for synchronization. For stable packages (like are currently included) development is slower in terms of API changes, so 6 months may suffice, but if younger packages are added then I don't think biannual releases will allow the HP to track development closely enough. I still think that it would be good to try to have a three stage model for releases, instead of the two stage model that seems to be assumed. Adding new packages or destructive API changes strike me as being very different from compatible API changes (which are, in turn, separate from big fixes and bundling fixes). I'd like to see these two types of changes being distinguished in terms of the release schedule. -- Live well, ~wren