I see more and more discussions about the moderation of the Python community.
There is a PSF "conduct" Working Group:
I noticed the following questions:
* Lack of transparency on how moderation is decided
* Lack of transparency on the number of received Code of Conduct
incidents: maybe start to produce "Code of Conduct transparency
report"? (If such reports already exist, I'm sorry, I wasn't aware
* Should the PSF conduct-WG handle conflicts between core developers?
Would it be possible to write down rules to formalize the moderation?
* First try to contact the author of an incident and warn them? Only
take an action immediately for exceptional cases like obvious spam?
* Maybe define numbers for ban: 1 week, then 3 months, then 6 months,
then 1 year? I would prefer to never ban someone forever. People can
* Scope: does the moderationg apply to *any* public space? Or only to
a restricted list like: mailing lists and bug tracker? What about
Twitter and conferences?
* Should the incidents which occur in the private space be handled as
well? Bullying can occur in the private space.
* How to handle conflict between core developers? Not directly related
to the code of conduct.
I'm not interested for work on such rules. I'm not sure neither if
it's the role of the Python core developers to propose something.
Maybe the PSF conduct WG should propose something, or even decide
Handling conflicts between core developers is the most difficult
question. I don't think that it's the role of the conduct working
group to handle that. Moreover, the Code of Conduct should be seen as
a way to evict a core developer out of Python. The Code of Conduct is
supposed to protect members of the Python community against people who
misbehave. But I'm unable to describe the limit between "misbehave"
and "conflict" between two developers.
My main concern is that the PSF conduct WG should not be seen as a
threat to core developers.
Note: I decided to write on python-committers mailing rather than
Discourse, since all previous discussions related to moderation
occurred on this list.
Python 3.7.1rc2 and 3.6.7rc2 are now available. 3.7.1rc2 is a release
preview of the first maintenance release of Python 3.7, the latest
feature release of Python. 3.6.7rc2 is a release preview of the next
maintenance release of Python 3.6, the previous feature release of
Python. Assuming no further critical problems are found prior to
2018-10-20, no code changes are planned between these release
candidates and the final releases. These release candidates are
intended to give you the opportunity to test the new security and bug
fixes in 3.7.1 and 3.6.7. We strongly encourage you to test your
projects and report issues found to bugs.python.org as soon as
possible. Please keep in mind that these are preview releases and,
thus, their use is not recommended for production environments.
You can find these releases and more information here:
nad(a)python.org -- 
since this got pretty long, here's the tl;dr:
- we're at the point where it is hard to make mailing lists work for us;
- we're switching to Discourse; it's better in many ways;
- go to https://discuss.python.org/ <https://discuss.python.org/> and create your account there;
- please do not post to python-committers for the remainder of the year to give Discourse a real shot.
And now the long version.
What's the issue?
During the core sprint in Redmond we discussed how we discuss. The overwhelming feel is that we have reached the limits of what is possible with mailing lists. We identified e-mail as a contributor to some of the problems we're dealing with now. To fix more and whine less, I talked with everybody in Redmond about a possible replacement for the trusty mailing list. We identified one: Discourse.
What is it?
Discourse is forum software started in 2013 by Jeff Atwood, Robin Ward, and Sam Saffron. It's used by many large scale open source projects and companies, including Github Atom, Twitter Developers, Rust, Kotlin, Elixir, Docker, Codeacademy, Patreon, EVE Online, and Imgur. It's open source (Ruby, GPL2), it supports plugins and has an API.
Why is it better than e-mail?
It's both a Web app and a terrific mobile application. It supports regular flat conversational threads and collapsible replies. There is community moderation where users can flag inappropriate messages to notify moderators, moderators and authors can lock topics, move discussions between categories, archive things that are no longer applicable, and so on.
You can edit posts, quote posts, link between posts, add rich media, code snippets with syntax highlighting, there's Markdown support. You can still use it via e-mail similarly to how GitHub notifications work. See: https://meta.discourse.org/t/set-up-reply-via-email-support/14003 <https://meta.discourse.org/t/set-up-reply-via-email-support/14003>
There is a user trust system where proven community members get more power in time, for example to fix typos and move topics to a better category.
There's much more: dynamic notifications, topic summaries, emojis, spam blocking, single sing-on, two-factor authentication, social login support, and so on. Read: https://meta.discourse.org/t/discourse-vs-email-mailing-lists/54298 <https://meta.discourse.org/t/discourse-vs-email-mailing-lists/54298>.
What about Zulip?
Zulip is chat software which some of us find useful but its UI is proving to be challenging for many of us, the mobile application leaves a lot to be desired, and it did not end up moving discussions out of the mailing lists. I see Zulip as replacement for IRC whereas Discourse is replacement for mailing lists (or both; we'll see!).
Where do I sign up?
Create an account at https://discuss.python.org/ <https://discuss.python.org/>. You'll recognize the set up as essentially mirroring the main mailing lists:
There's also Discourse-specific sections:
- Discourse Feedback (post here if things don't work like you'd like)
- Discourse Staff (hidden category for moderators and admins of the instance, boring discussion)
- Inquisition (hidden category for users with trust level 3+)
As you can see, I combined python-committers and python-dev into just "Committers". If we find in the future that this is too limiting, we can always open up another category. For now though I'd like to avoid the fate of python-dev where there's 20k+ subscribers and we don't know who is who.
CALL TO ACTION
We'd like to heavily test this new forum. As such, I would like to ask you to NOT USE python-committers for the remainder of the year and direct all conversation to Discourse.
The goal to replace the mailing lists with Discourse met unanimous support at the core sprint. As long as we don't identify any deal breakers in October, I will send an e-mail like this to python-dev on November 1st, and to python-list and python-ideas on December 1st. If everything goes smoothly, those four mailing lists will be archived by end of this year. Other mailing lists are welcome to port over to Discourse too.
Pablo and Ernest worked on setting up this instance for us (thank you both! 🖤). The question whether Discourse or the Python Software Foundation are going to pay for this infrastructure is still open but, as Elon Musk likes to say, funding is secured. Yury and I are helping in configuring the instance.
We'll be enabling GitHub and social logins soon, ideally with adding identified committers to the committers group by default. We are looking into this right now. In the mean time, please request membership, an existing member will add you. We'd like to migrate old discussion off of the mailing lists to our Discourse instance so that search is immediately useful. We'll look into that after the governance crisis is resolved.
I was waiting for other governance PEPs to decide if I would write
mine or not. Since I don't see other PEPs, I decided that I will write
mine. Please give me between one and three weeks to write it.
Note: Sorry, I didn't follow the Discourse discussion, I'm not sure if
this mailing list should be used or not.
[duplicated from https://discuss.python.org/c/committers]
We issued the 3.7.1rc1 and 3.6.7rc1 release candidates a little over 11 days ago with the plan to have final releases for each available by today, assuming no new issues arose since the rc1 cutoffs. While the good news is that, to the best of my knowledge, no regressions have been reported for the release candidates (or remain unfixed), several critical and security-related issues have identified during the rc phase. Most of these have already been addressed (thanks for the quick responses!) but there remain a couple that still need to be finalized. Since there is a non-zero amount of fixes going in after rc1, I think we need to do another set of release candidates once everything is resolved. Because a number of core developers are right now attending various Python-related events, I am going to aim for tagging 3.7.1rc2 and 3.6.7rc2 after 2018-10-09 23:59 AoE, if at all possible, with final releases targeted for about 10 days later. I will send out an update as we approach that time.
Just a reminder to core developers: as always please try to get fixes merged in to all relevant branches as soon as you feel they are ready. There is no need to hold off during a release candidate phase. Release managers will cherry pick as necessary appropriate fixes from the release branches into subsequent release candidates or final releases. The sooner changes are merged, the sooner they will get buildbot exposure and potential exposure in the wider community.
nad(a)python.org --