[yt-dev] Proposed change to development practices

Cameron Hummels chummels at gmail.com
Wed Jan 14 06:36:43 PST 2015


I like this idea, but I have a few comments.

It seems like the boundary between a bugfix and new functionality is pretty
blurred in most instances.  Few are the bugfixes which are just correcting
typos or a single line of code, and oftentimes in order to fix a bug fully,
a significant amount of new code needs to go in.  So I have my concerns
about how to deal with making the decision when something should go in
stable or in yt branches.

Also, who will be responsible for applying code from stable to the yt
branch after a PR has been merged with stable?  Is this to be the original
PR author, or instead someone dedicated to doing this within the yt
community (perhaps for a month at a time)?  Either way, this is potentially
a considerable onus for someone, particularly (as you note) in cases where
the bugfix code works differently between stable and dev branches.  We
already have a relatively moderate learning curve associated with new users
trying to contribute code (learning BB, merging to the correct branch,
correcting code after comments, etc.), and my concern is that this
additional task may be just one more hurdle that keeps new devs away from
contributing.  But perhaps I'm wrong.  At least for veteran developers, I
don't think the additional work will be that much of a challenge.

So in general, I am for the suggested change, but I think we need to think
about how best to address some of these concerns moving forward.

On Wed, Jan 14, 2015 at 3:02 AM, Suoqing JI <suoqing at physics.ucsb.edu>
wrote:

> Hi,
>
> I agree to the suggestion that the bugfix should also go into the stable
> branch.
>
> as soon as a bugfix pull request to stable goes in, there should be an
> accompanying merge from the stable branch into the yt branch to ensure that
> both branches get bug fixes.
>
>
> This is one possible way of doing it, so we can avoid the potential
> “mixing” of the new features in yt branch into the stable branch:
> http://stackoverflow.com/questions/7165989/mercurial-apply-a-bugfix-change-from-stable-named-branch-to-dev-branch
>
>
> Best wishes,
>
> --
> Suoqing JI
> Ph.D Student
> Department of Physics
> University of California, Santa Barbara
> CA 93106, USA
>
> On Jan 13, 2015, at 3:44 PM, Nathan Goldbaum <nathan12343 at gmail.com>
> wrote:
>
> Hi all,
>
> Now that yt 3.1 is making its way out the door, I'd like to come back to a
> discussion we had last year about bugfixes.
>
> I've made a pull request to the YTEP repository that summarized the change
> I'm proposing:
>
>
> https://bitbucket.org/yt_analysis/ytep/pull-request/48/modify-ytep-1776-to-require-that-bugfixes/diff
>
> Basically, I think bugfixes need to go to the stable branch rather than
> the yt branch.  Currently, all new changes go to the yt branch.  While this
> does simplify our development practices, this makes it difficult for us to
> release new versions that only include fixes for bugs.  Instead, even minor
> version releases that are cut from the yt branch include new features and
> API breakages.
>
> I think this approach violates the principle of least surprise for users
> who have download a bugfix release.
>
> The solution, I think, is to ensure bugfixes are only applied to the
> stable branch.  This will ensure that we can straightforwardly do bugfix
> releases that inlude only bugfixes and that new features and API changes
> are isolated to the more "experimental" yt branch.
>
> This does come with some possible down sides.  In particular, there will
> likely be some confusion as we switch our development practices.  In
> addition, new contributors may find it difficult to split pull requests
> into new features that should go to the yt branch and bugfixes that should
> go to the stable branch.  It also adds a new maintenance burden: as soon as
> a bugfix pull request to stable goes in, there should be an accompanying
> merge from the stable branch into the yt branch to ensure that both
> branches get bugfixes.  This gets more complicated if the bugfix looks
> different in the yt branch and the stable branch.
>
> All that said, I think these new maintenance burdens can be overcome with
> a bit of vigilance and maybe some new tooling.
>
> I've probably said enough about this.  What do you all think?  Comments
> and concerns are very welcome.
>
> Best,
>
> Nathan Goldbaum
> _______________________________________________
> yt-dev mailing list
> yt-dev at lists.spacepope.org
> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>
>
>
> _______________________________________________
> yt-dev mailing list
> yt-dev at lists.spacepope.org
> http://lists.spacepope.org/listinfo.cgi/yt-dev-spacepope.org
>
>


-- 
Cameron Hummels
Postdoctoral Researcher
Steward Observatory
University of Arizona
http://chummels.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.spacepope.org/pipermail/yt-dev-spacepope.org/attachments/20150114/69aba103/attachment.htm>


More information about the yt-dev mailing list