Promote Xiang Zhang as a core developer
Hi,
Last months, I noticed that Xiang Zhang is very active on the bug tracker and propose many enhancements and bug fixes. He contributes to Python code, but also to the C code (a rare skill nowadays). Slowly, he understood how to produce "good" patches, the CPython workflow, etc. I think that his contributions are now good enough to give him the commit bit.
As I did previously (for Xavier), I also propose to be his mentor the first month: request him to ask me before pushing anything, help him with Mercurial, branches, etc. So I can help to avoid simple mistakes and to not break the buildbot too often :-)
Maybe Serhiy Storchaka and/or Yury Selivanov may want to co-mentor Xiang? Serhiy reviewed many of Xiang's patches recently.
Victor
+1, if I can vote.
He helped me a lot by reviewing my patch, and fixing issues relating to dict.
Regards,
INADA Naoki <songofacandy@gmail.com>
On 14 November 2016 at 22:09, Victor Stinner <victor.stinner@gmail.com> wrote:
Hi,
Last months, I noticed that Xiang Zhang is very active on the bug tracker and propose many enhancements and bug fixes. He contributes to Python code, but also to the C code (a rare skill nowadays). Slowly, he understood how to produce "good" patches, the CPython workflow, etc. I think that his contributions are now good enough to give him the commit bit.
I haven't been doing a lot of general patch triage lately, but Xiang's issue report where he found and fixed an obscure problem in the new multi-phase extension module import system [1] was a genuinely enjoyable experience for me as a patch reviewer (and the patch itself was complete and correct, so the only thing I needed to add was a NEWS entry).
Cheers, Nick.
[1] http://bugs.python.org/issue27782
-- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia
I thought someone asked Xiang if he wanted to be a core dev during the core sprints in September and he turned down the offer?
On Mon, 14 Nov 2016 at 04:10 Victor Stinner <victor.stinner@gmail.com> wrote:
Hi,
Last months, I noticed that Xiang Zhang is very active on the bug tracker and propose many enhancements and bug fixes. He contributes to Python code, but also to the C code (a rare skill nowadays). Slowly, he understood how to produce "good" patches, the CPython workflow, etc. I think that his contributions are now good enough to give him the commit bit.
As I did previously (for Xavier), I also propose to be his mentor the first month: request him to ask me before pushing anything, help him with Mercurial, branches, etc. So I can help to avoid simple mistakes and to not break the buildbot too often :-)
Maybe Serhiy Storchaka and/or Yury Selivanov may want to co-mentor Xiang? Serhiy reviewed many of Xiang's patches recently.
Victor
python-committers mailing list python-committers@python.org https://mail.python.org/mailman/listinfo/python-committers Code of Conduct: https://www.python.org/psf/codeofconduct/
Hi,
2016-11-14 23:38 GMT+01:00 Brett Cannon <brett@python.org>:
I thought someone asked Xiang if he wanted to be a core dev during the core sprints in September and he turned down the offer?
I asked Xiang once on IRC if he would be interested to become a core, and yes, he is interested.
During the sprint, we discussed potential new core developers. Xiang was proposed, but one or two people said that he doesn't know well enough the workflow, or something like that. So I waited for 2 months. If you look at the Mercurial history, many Xiang's patches were merged recently: Nov 6, Nov 4, Oct 30, Oct 25, Oct 23, Oct 22, Oct 17, Oct 16, Oct 13, Oct 9, Oct 8, Oct 2, Oct 1, Sept 27, etc.
Maybe Xiang needs a longer mentoring period than 1 month, but I want to keep him motivated. Active contributors (even inside core developers) are rare, so we always need fresh blood :-)
Statistics on commits on the last 12 months: https://github.com/python/cpython/graphs/contributors?from=2015-11-15&to=2016-11-15&type=c
Victor
On Tue, Nov 15, 2016 at 12:26 AM, Victor Stinner <victor.stinner@gmail.com> wrote:
Maybe Xiang needs a longer mentoring period than 1 month, but I want to keep him motivated. Active contributors (even inside core developers) are rare, so we always need fresh blood :-)
I agree with this statement. I did a review of his contributions and many seem worthy. I am +1 to support commit privileges for Xiang.
Thanks, Senthil
2016-11-15 16:46 GMT+01:00 Senthil Kumaran <senthil@uthcode.com>:
Maybe Xiang needs a longer mentoring period than 1 month, but I want to keep him motivated. Active contributors (even inside core developers) are rare, so we always need fresh blood :-)
I agree with this statement. I did a review of his contributions and many seem worthy. I am +1 to support commit privileges for Xiang.
Ok, I will wait until Sunday evening to make sure that everybody has the opportonity to vote.
Even if Berker and Serhiy have legit concerns, I'm still in favor of giving the commit bit to Xiang right now.
Berker, Serhiy: Do you prefer that I mentor Xiang first during one month, then give him the commit bit, but continue to mentor him? Or are you ok to give him the commit bit right now, and as I wrote, request him to ask me before pushing anything?
Victor
2016-11-18 18:16 GMT+02:00 Victor Stinner <victor.stinner@gmail.com>:
Berker, Serhiy: Do you prefer that I mentor Xiang first during one month, then give him the commit bit, but continue to mentor him? Or are you ok to give him the commit bit right now, and as I wrote, request him to ask me before pushing anything?
I'm for giving him the commit bit right now.
On Mon, Nov 14, 2016 at 3:09 PM, Victor Stinner <victor.stinner@gmail.com> wrote:
Hi,
Last months, I noticed that Xiang Zhang is very active on the bug tracker and propose many enhancements and bug fixes. He contributes to Python code, but also to the C code (a rare skill nowadays). Slowly, he understood how to produce "good" patches, the CPython workflow, etc. I think that his contributions are now good enough to give him the commit bit.
As I did previously (for Xavier), I also propose to be his mentor the first month: request him to ask me before pushing anything, help him with Mercurial, branches, etc. So I can help to avoid simple mistakes and to not break the buildbot too often :-)
Maybe Serhiy Storchaka and/or Yury Selivanov may want to co-mentor Xiang? Serhiy reviewed many of Xiang's patches recently.
I also reviewed and pushed Xiang's patches. Xiang tends to fix things that are not broken, and when you point out that the thing they are trying to fix is not broken, they try to start an endless discussion. I also saw a couple of instances where they refused to address code review comments from experienced core developers (which is a red flag for me)
--Berker
Hi,
2016-11-15 1:10 GMT+01:00 Berker Peksağ <berker.peksag@gmail.com>:
Xiang tends to fix things that are not broken,
This sentence sounds strange. What do you mean? :-)
(...) and when you point out that the thing they are trying to fix is not broken, they try to start an endless discussion. I also saw a couple of instances where they refused to address code review comments from experienced core developers (which is a red flag for me)
I guess that "they" means "he", so Xiang, right?
Do you have some examples of such discussions? I'm not aware of such issue.
Victor
On Tue, Nov 15, 2016 at 11:17 AM, Victor Stinner <victor.stinner@gmail.com> wrote:
Hi,
2016-11-15 1:10 GMT+01:00 Berker Peksağ <berker.peksag@gmail.com>:
Xiang tends to fix things that are not broken,
This sentence sounds strange. What do you mean? :-)
(...) and when you point out that the thing they are trying to fix is not broken, they try to start an endless discussion. I also saw a couple of instances where they refused to address code review comments from experienced core developers (which is a red flag for me)
I guess that "they" means "he", so Xiang, right?
Correct, sorry for being unclear. https://en.wikipedia.org/wiki/Singular_they can probably do a better job on explaining my usage of it :)
Do you have some examples of such discussions? I'm not aware of such issue.
- http://bugs.python.org/review/27861/ (you can start reading from my first comment)
- http://bugs.python.org/issue27740
- http://bugs.python.org/issue27414
There are more examples where Xiang refused to address reviews comments by saying "do what you want", but I don't really have time to dig bugs.p.o mails now (one of them was in response to Serhiy's comments) Committing a patch takes a lot of time and I think respecting a core developer's time is a good trait to look for (of course I'm not saying that all review comments are correct and should be addressed without any discussion)
I agree that we should look for people who wrote high quality patches, but I think we also should look for people who help other members of the community by doing *boring* tasks (e.g. review patches submitted by other contributors, triage old issues on the tracker, update an outdated patch by addressing review comments)
--Berker
On 19 November 2016 at 13:07, Berker Peksağ <berker.peksag@gmail.com> wrote:
I agree that we should look for people who wrote high quality patches, but I think we also should look for people who help other members of the community by doing *boring* tasks (e.g. review patches submitted by other contributors, triage old issues on the tracker, update an outdated patch by addressing review comments)
While I agree with this, I don't think it's an either/or situation - I know when I've recommended folks for commit rights in the past, it's been because the situation changed from "discussing their patches with me before I commit them is leading to important changes prior to merging" to "I'm mostly just rubberstamping their patches, and I trust them to ask me or another core dev for our perspective when they're unsure, and to take it with good grace if someone asks for a change they made to be reverted for further discussion". One of the luxuries of version control is that only released changes are hard to undo :)
One specific technique that has worked well in some cases is to explicitly scope a new committer's responsibilities (i.e. the "to work on X, Y, Z" comments in the developer log), rather than saying "feel free to approve changes anywhere in the code base". Branching out from that initial base (if they choose to do so) can then happen over time as they gain familiarity and confidence in more areas.
Cheers, Nick.
-- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia
понеділок, 14 листопада 2016 р. 13:09:35 EET Victor Stinner написано:
Last months, I noticed that Xiang Zhang is very active on the bug tracker and propose many enhancements and bug fixes. He contributes to Python code, but also to the C code (a rare skill nowadays). Slowly, he understood how to produce "good" patches, the CPython workflow, etc. I think that his contributions are now good enough to give him the commit bit.
As I did previously (for Xavier), I also propose to be his mentor the first month: request him to ask me before pushing anything, help him with Mercurial, branches, etc. So I can help to avoid simple mistakes and to not break the buildbot too often :-)
Maybe Serhiy Storchaka and/or Yury Selivanov may want to co-mentor Xiang? Serhiy reviewed many of Xiang's patches recently.
Since the first commit 8 months ago I counted about 50 Xiang's committed patches, and most of them were committed by me (other 10 core developers committed form 1 to 4 Xiang's patches). He helped with reviewing patches and discussing issues. His C skills was good 8 months ago, and now he is known with CPython style and workflow. He sees beneath the surface and understands that he need to consider edge cases and side effects.
From technical point there is no need to grant him commit rights, because I and other core developers commit his patches. Almost all his patches are commited (there are few issues in progress and there are few documentation issues). But for motivating purpose I support this proposition.
Unfortunately there is truth in Berker's words. Yes, Xiang tends to fix things that don't look obviously broken (for example see issue28398 [1] and issue28531 [2]). This may have been partially my fault, because I committed his patches that would not dare to offer himself. He is inclined not to accept comments obediently, but start a discussion. Not sure this is certainly bad.
But I think he will be more cautious having commit rights.
[1] https://bugs.python.org/issue28398 [2] https://bugs.python.org/issue28531
2016-11-15 19:32 GMT+01:00 <storchaka@gmail.com>:
Since the first commit 8 months ago I counted about 50 Xiang's committed patches, and most of them were committed by me (other 10 core developers committed form 1 to 4 Xiang's patches). He helped with reviewing patches and discussing issues. His C skills was good 8 months ago, and now he is known with CPython style and workflow. He sees beneath the surface and understands that he need to consider edge cases and side effects.
Cool :-)
From technical point there is no need to grant him commit rights, because I and other core developers commit his patches. Almost all his patches are commited (there are few issues in progress and there are few documentation issues). But for motivating purpose I support this proposition.
For me, the main reason to give the commit bit is to motivate contributors :-) I know that many people are proud to be core developers (but don't say it loudly ;-)) and it keeps them motivated.
Unfortunately there is truth in Berker's words. Yes, Xiang tends to fix things that don't look obviously broken (for example see issue28398 [1] and issue28531 [2]). This may have been partially my fault, because I committed his patches that would not dare to offer himself. He is inclined not to accept comments obediently, but start a discussion. Not sure this is certainly bad.
I look at these two patches and the patch looks good to me, but it's also right that they don't fix any bug. I will make sure that Xiang understands well that changes in CPython must be carefully reviewed by others, and that sometimes it's just fine to abandon patches.
Victor
We received an email from Xiang with his SSH keys and GitHub username (although no subscription request for python-committers). Was he finally approved for receiving commit privileges?
On Mon, 14 Nov 2016 at 04:10 Victor Stinner <victor.stinner@gmail.com> wrote:
Hi,
Last months, I noticed that Xiang Zhang is very active on the bug tracker and propose many enhancements and bug fixes. He contributes to Python code, but also to the C code (a rare skill nowadays). Slowly, he understood how to produce "good" patches, the CPython workflow, etc. I think that his contributions are now good enough to give him the commit bit.
As I did previously (for Xavier), I also propose to be his mentor the first month: request him to ask me before pushing anything, help him with Mercurial, branches, etc. So I can help to avoid simple mistakes and to not break the buildbot too often :-)
Maybe Serhiy Storchaka and/or Yury Selivanov may want to co-mentor Xiang? Serhiy reviewed many of Xiang's patches recently.
Victor
python-committers mailing list python-committers@python.org https://mail.python.org/mailman/listinfo/python-committers Code of Conduct: https://www.python.org/psf/codeofconduct/
Hi,
2016-11-21 21:53 GMT+01:00 Brett Cannon <brett@python.org>:
We received an email from Xiang with his SSH keys and GitHub username (although no subscription request for python-committers). Was he finally approved for receiving commit privileges?
(Oh, I forgot to send an email to python-committers.)
Berker Peksağ reported issues on reviews. I proposed to handle these issues with mentoring. I asked Xiang to ask me before pushing anything during one month. After this period, we can discuss again to continue mentoring with the same rule, or maybe change rules or even stop mentoring. In short, I commit my responsibility with taking Xiang onboard :-)
I counted five positive votes (including myself):
- INADA Naoki
- Nick Coghlan
- Senthil Kumaran
- Serhiy Storchaka
- Victor Stinner
So, yes, I suggest to take him onboard :-)
Victor
+1 thanks for mentoring.
On Mon, Nov 21, 2016, 2:14 PM Victor Stinner <victor.stinner@gmail.com> wrote:
Hi,
2016-11-21 21:53 GMT+01:00 Brett Cannon <brett@python.org>:
We received an email from Xiang with his SSH keys and GitHub username (although no subscription request for python-committers). Was he finally approved for receiving commit privileges?
(Oh, I forgot to send an email to python-committers.)
Berker Peksağ reported issues on reviews. I proposed to handle these issues with mentoring. I asked Xiang to ask me before pushing anything during one month. After this period, we can discuss again to continue mentoring with the same rule, or maybe change rules or even stop mentoring. In short, I commit my responsibility with taking Xiang onboard :-)
I counted five positive votes (including myself):
- INADA Naoki
- Nick Coghlan
- Senthil Kumaran
- Serhiy Storchaka
- Victor Stinner
So, yes, I suggest to take him onboard :-)
Victor
python-committers mailing list python-committers@python.org https://mail.python.org/mailman/listinfo/python-committers Code of Conduct: https://www.python.org/psf/codeofconduct/
participants (9)
-
Berker Peksağ
-
Brett Cannon
-
Gregory P. Smith
-
INADA Naoki
-
Nick Coghlan
-
Senthil Kumaran
-
Serhiy Storchaka
-
storchaka@gmail.com
-
Victor Stinner