Vote to promote Batuhan Taşkaya

I want to propose promoting Batuhan Taşkaya as a core developer.

  • Promote Batuhan Taşkaya
  • Don’t promote Batuhan Taşkayar

0 voters

I have been mentoring Batuhan since past November and I gave him triage privileges at the end of January. Since this time, Batuhan has more than 100 commits merged to the master branch of CPython and he has learned a lot about our processes, workflows and values. He also knows the value of preserving maintainability and backwards compatibility and how important that is for us. Batuhan is a smart, enthusiastic and proactive person that tries to help in everything he can. He is very easy to work with and he has proven that he can listen to feedback and act on it very diligently. He is also kind to contributors and has learned how to iterate with them to produce the best results for CPython and for the contributor’s experience.

Batuhan’s contributions are both in Python and C and although many of them are centred around the AST modules and related functionality (as this is the area where Batuhan is most excited about) he has contributed to several parts of the CPython VM and standard library.

Here are some selected links and sections to get an idea of Batuhan skills and accomplishments:


Major accomplishments in CPython

  • Co-authored exposing ast.unparse.
  • Enhancements / and general maintenance of the AST module, and related tooling (ASDL generator, ast_unparse.c, …).
  • Implementation of the required changes to make from __future__ import annotations the default on 3.10 (
  • Testing CPython on different platformsand and locating/fixing bugs fo best-effort systems. He maintains the “isidentical-centos-power8” worker on our buildbot fleet.

General maintenance tasks

  • Active on the bug tracker; comments / follows AST related issues. Triages issues on several different fields.
  • Perform reviews on AST, tokenize, lib2to3 related PRs. (GH-12382, GH-19612, GH-16994, …)
  • Keeps track of Python’s build on different architectures/operating systems/compilers
    and sends patches for supported systems (GCC compile farm user).

Selected bpo issues

I talked to Batuhan about this potential new role and its responsibilities, and he is excited to become a member of the core dev team. I am confident of Batuhan’ skills and attitude and his dedication to improving Python and I am sure that he will be a productive member of the team for years to come.

Post-promotion mentoring

As it was done in previous promotions I will continue to mentor him for one month after his promotion (if it’s accepted) to help him to deal with his new responsibilities, and I plan to require him to ask me before merging anything until he will be used to the process.

Vote process

As a reminder from PEP 13 regarding voting rules:

It is granted by receiving at least two-thirds positive votes in a core team vote that is open for one week and with no veto by the steering council.


I voted Yes! I was asked by @guido about doing this at the sprint and started poking around looking at background. Batuhan will make a great core dev. Thanks for nominating!


I’ve not been specifically involved in the areas that Batuhan has contributed most to (such as AST and parser), but I have seen many of his interactions on Github with other contributors as well as throughout other areas such as within the Python Discord community. He’s always been incredibly positive, encouraging, and humble to others. I fully trust that he would continue to be an excellent role model as a core developer.

With that in addition to Pablo’s endorsement, as well as looking over some of his 110 authored merged PRs, 77 PR reviews, and some of the bpo interactions (from the highlights), I can confidently give Batuhan my +1.


I worked a lot with Batuhan (maybe less than he wanted, but I have limited resources), he is very motivated, cooperative, and competent. I am sure that he would be good core developer.


You beat me (and Greg) to it! Batuhan is great. Let’s welcome him soon.


I’ve been silently following some of Batuhan’s work on the AST module and it has always been excellent. Strong +1 from me as well!



It’s definitively a big +1 for me.

I’m following Batuhan’s work for one year. He made great achievements like ast.unparse (worked in pair with Pablo) and make annotations as string the default in Python 3.10 (a giant PR that I failed to review, but Guido did, great!). He is very active for at least one year which proves that he is motivated and will stay around to continue to maintain his code.

The AST is tightly coupled to the compiler, the grammar, …: all these things look really complex to me. I’m really happy to see more hands to maintain and evolve all this code!

Batuhan helped to fix a very annoying and complex regression with asynchronous comprehensions: bpo-39562 (fixed in Python 3.8.3). The change required to modify important constants, he wrote unit tests to ensure that we don’t regress in the future.

On his PR Support unparsing of infinity numbers in ast_unparser.c, I recall that I was really annoying to require the code (creating a Unicode string in C is non-trivial) to be written in a specific way. Batuhan welcomed my reviews and provided good feeback.

On his PR Implement Simple Preceding to AST Unparser, there was a discussion on adding “import enum” to the ast module. There was a constructive discussion about moving the feature into a sub-module, maybe using a lazy import. The enum won, it’s now imported by “import ast” :slight_smile: Batuhan also extracted the non-controversial part into a first PR to prepare the code base: Refactor delimiting with context managers in ast.unparse which made the review of the first PR easier. I also recall a constructive discussion on this non-trivial PR.

Just yesterday, he made a very useful review on my AST change and I felt sorry to forget Batuhan in reviewer (I had subinterpreters in mind, not AST), but he catched my PR!


Batuhan obviously got enough votes, so the SC will start the next steps.


I would be interested in the reasons for the negative votes. It’s a pity people often don’t explain them.
(this is not an accusation, just curiosity and slight frustration: if there are genuine reasons to be skeptical, why not communicate them publicly for other people to judge?)

1 Like

Agreed, it would also be useful for the candidate as potentially valuable constructive feedback that they could use to improve themselves going forward (regardless of the final result of the vote). Unless it was completely unfounded or non-constructive, I doubt that it would be held against the person explaining their negative vote.

1 Like

Wasn’t me, but I could understand that the one -1 voter would prefer to remain anonymous, given they they will have to collaborate with Batuhan going forward. So I wouldn’t press it.

1 Like

The SC approves Batuhan’s promotion who officially becomes a core developer :wink: Congratulations Batuhan @isidentical, it’s well deserved!

@pablogsal: See for next practical steps.


I’m glad to join the team, want to thank @pablogsal for his continuous support and everyone here for their kind words!


Welcome Batuhan!