Handling of compiler patches
Andrea Fontana
nospam at example.com
Thu Jun 21 00:57:07 PDT 2012
+1
On Thursday, 21 June 2012 at 07:40:35 UTC, bearophile wrote:
> For DMD in GitHub there are more than one hundred open pull
> requests (currently 111). So far people have created more than
> one thousand patches for DMD (currently 1022):
>
> https://github.com/D-Programming-Language/dmd/pulls
>
> Among the list of open pull requests there are some bugs and
> enhancement requests that I'd really like to see applied &
> fixed in not too much time.
>
> I am not a compiler writer, but I have two suggestions for
> Walter (or at least to open a discussion, if the things I am
> saying are wrong):
>
> 1) Currently the patches that Walter applies written by other
> people come mostly from the most recent ones. So the list of
> the open pull requests is managed almost as a stack (last in -
> fist out). I think this is not good.
>
> I suggest to do the opposite, this means to manage that list
> more like a queue (first in - first out), so I suggest Walter
> to look for patches to apply starting from the oldest ones.
> This has the advantage that the patches don't get too much old,
> so they rot less.
>
> An additional strategy to choose what patches to apply is to
> choose first the ones that fix bugs that are most significant.
> Bugs are not all equal, many bugs don't cause significant
> problems, while others are quite annoying. Significant bugs
> often are fixed by small patches. I see lot of not so
> significant patches applied, while I see patches that fix bugs
> that I hit every other day sleep in that list for weeks or
> months. If you want I will list some significant patches
> currently open.
>
>
> 2) I suggest Walter to increase a little more the openness of
> the way the front-end is developed. There are many kinds of
> compiler patches:
>
> - Simple localized change;
> - Complex localized change;
> - Widespread trivial changes;
> - Widespread complex changes;
> - Back-end changes Vs front-end changes;
> - That fixes a well defined and localized bug;
> - That introduces a new feature, or a small part of a new
> feature.
>
> The harder patches are better left to Walter, but I suggest
> Walter to eventually let few other people merge the simpler
> patches, after a review by one or two more persons.
>
> In large projects, with skilled helper people, the leader
> eventually must learn to trust other people and to delegate
> some of the work, building a pyramid of trust. I think that if
> Hara writes a simple 5-lines long patch for the DMD front-end,
> and Don or someone else equally skilled reviews and accepts
> that patch, there is no need for Walter to merge that little
> patch himself.
>
> Bye,
> bearophile
More information about the Digitalmars-d
mailing list