What to do with contributors who refuse code of conduct?

In pypa/setuptools#3035, a user explicitly opts out of the code of conduct:

I explicitly state that I DO NOT AGREE with being forced to agree with the PSF Code of Conduct to submit this issue. I ticked the box just because I cannot continue otherwise. I hope this requirement for issue submission is an oversight. If not, please close this issue and ignore my report.

I’m unsure what to do with that report. I don’t think a user should be able to opt out of the code of conduct, so I’m inclined to follow their direction and remove the issue. I’d advise them to open an issue with packaging-problems or with this discourse, except I believe here they’re also required to accept the CoC to participate.

Does that mean the user is effectively self-banned from any PyPA or Python discussions?


I suspect they’re confused about what it means to “agree to the PSF Code of Conduct”, but that’s not really our responsibility to worry about. If they had a genuine issue, they could still follow the CoC long enough to explain what the issue is. If they’d rather self-ban then that’s their decision I guess :shrug: I’d worry more about the people who self-ban because they’re anxious about filing bugs in public, worried about harassment, that kind of thing.


Is there any reason to have the following checkbox at all?

I agree to follow the PSF Code of Conduct

IANAL but I don’t think a participant needs to give consent to a CoC.
One needs to follow it where it’s mandated, sure, and violation would
result in a ban or similar, but action is supposed to be from
moderators, not participants.

IMHO it’d be friendlier to replace the checkbox from the UI with
an informative statement, e.g. a pointer to the CoC itself. It’d be
more polite to inform one of the CoC before banning, but it’s not
strictly necessary. Afterall, one can follow the rules without
agreeing to follow or even knowing about them, especially when the PSF
CoC is more about what one must not do than what one must do.


Lurker’s 2 cents: it’s worth noting that the checkbox asks to “agree to follow the CoC”, while this person said he refused “to be forced to agree with the CoC”. One might not (EDIT: the missing “not” was confusing here) be happy with the principle of having a CoC (with a committee that can enact suspensions or bans, etc.) while actually agreeing not to engage in behavior that would violate the CoC. So there might be a misunderstanding.


The checkbox was added in pypa/setuptools#2594 as part of a forms-based bug process. I suspect the intention was to get positive consent to follow the CoC. Perhaps the checkbox should simply be removed.

It feels like a solution waiting for a problem, and it found one.

I’m also of the opinion that it’s better to assume good faith rather than enforce it up front and to react if necessary.

@webknjaz Do you have any additional context you’d like to add?


That’s probably the only effective way to handle it anyway. Someone could say they agree and then violate it, so that agreement doesn’t really mean much. Perhaps the thing to do is to include a checkbox that has them acknowledging that all of these forums operate under the CoC, with a link to said CoC.


Yes, what he’s saying is actually quite specific:

I DO NOT AGREE with being forced to agree with the PSF Code of Conduct to submit this issue

He’s not even saying he doesn’t agree with the PSF CoC, he’s saying he doesn’t agree with being forced to agree with it. But as you point out the checkbox doesn’t actually ask to you to agree with it, it just asks you to agree to follow it. :person_shrugging:


These are the same thing though. You have to follow the CoC to participate in the issue tracker, so if you choose to post an issue you’re agreeing regardless. The only thing the checkbox does is draw people’s attention to it, so they have a chance to read the CoC before they accidentally violate it, or before they intentionally violate it and then pretend that they had no idea the CoC was a thing.

This poster wants to avoid participating in spaces governed by the PSF CoC. The checkbox is helping them; without it they might have started participating in the issue tracker by accident, and then been surprised later to realize that they’d agreed follow the CoC.


Let’s be honest, very few people are going to bother reading the CoC before submitting an issue. I’m sure I read it once but I don’t remember anything it says. I assume it’s boilerplate stuff and people who misbehave will misbehave regardless. In addition to that, whether someone expressly agrees to follow the CoC or not is of no consequence; they are bound by it either way.

1 Like

I’m a little confused as to why the user didn’t simply decide not to submit the issue at all. It feels to me like they have an axe to grind of some sort, and by making the statement they did, they were hoping to provoke some sort of response.

I’d be inclined simply to close the issue as they requested and move on.


My two cents: Yes. Any such contributors should be told that “we expect everyone to follow the CoC” and the relevant issue can be closed. Basically, exactly what has been done in this case.

That’s precisely what we have! :slight_smile:

The user checked that box, but also included a note stating that they refuse to agree with the CoC.

I don’t think we should change anything here or do anything differently from how this was handled.


It was derived from the examples GH had back when this feature was still in alpha. I think it’s a good idea to have it for transparency. This approach is also used in a number of places where I contributed it and I haven’t heard any major complaints.
The only case I can recall was a person submitting an issue on the Ansible tracker and unticking the checkbox right after creation. I asked them why they did that and the answer was something along the lines of “I don’t know English very well, I cannot agree with something I don’t fully understand and I haven’t read it” (that is as I recall it, I can’t seem to find the specific issue on GitHub at the moment). The person didn’t misbehave IIRC so we didn’t do anything about that, I think.

FWIW the fact that an issue submitter is forced to tick the checkbox is making them more aware of the existence of the CoC which is also linked there allowing them to read it. I think that this sort of transparency may contribute to their understanding of the expectations, even if they chose not to read the CoC itself.

Hi all. I’m the person who explicitly refused to agree to follow the CoC.

I’m not a native English speaker nor a US citizen or resident, and I simply have no idea what are the full legal implications of clicking a checkbox to “agree” or “agree to follow” something. I hope you understand it would not be wise for me to follow words or advise about such meaning from any of you (you are not lawyers, right?), and I hope you will understand it is unreasonable to spend money hiring a lawyer to get proper legal advice. Moreover, I believe the act of “agreeing to follow” is totally inconsequential, so then what’s the point of asking for agreement? I’m acting in good faith, submitting an issue as a user, so I’m not even a contributor, nor pretending to become one! Should I really be forced to “agree” on things just to submit an issue? If the true intentions are awareness, can’t you just change the wording to something much simpler like “I have read the CoC”?

This is not the first time I had related troubles. I’ve been asked more than once to sign contributor agreements and things like that. Well, I’ve always refused, and had to trash some useful work as as consequence. Why? Because I’m 100% discomfortable with signing and agreeing to stuff without proper legal advice. And I do my FOSS work for free, it will be unfair to have to spend even more resources (time understanding legal stuff, money in lawyers, etc.) to make a contribution.


You probably are already aware but just in case not I’d like to mention (very easy to miss on the account creation screen) that by having a Github account you are agreeing to the GitHub Terms of Service and GitHub’s privacy practices: GitHub Terms of Service - GitHub Docs and GitHub Privacy Statement - GitHub Docs

And by posting issues on Github (actually any use of the Github website or service as per the Terms of Service) you are agreeing not to violate the GitHub Community Guidelines nor the Acceptable Use Policies: GitHub Community Guidelines - GitHub Docs and GitHub Acceptable Use Policies - GitHub Docs


Thanks Lisandro for explaining your perspective. I do sympathize with that perspective, and I wish to make contributions to OSS, including filing bug reports, as low friction as possible. And the perception of a legal encumbrance, real or merely perceived, is friction. Even the mere mechanics of checking the box for each report submission and ignoring the “task” that creates is extra friction.

I understand also the incentive to try to bootstrap each potential contributor with a baseline expectation about the project.

Thanks everyone for the feedback and information. Based on everything, I’m inclined to simplify the process by removing the checkbox and replace it by a comment or maybe rely on the expectation established by Github and the advertised Code of Conduct artifact.


And those documents are far less understandable than the Code of Conduct, and with much more serious legal issues related to them, since they are granting rights to a corporation.

1 Like

For those curious this is how GitHub advertises this CoC artifact when raising a new issue (I hadn’t noticed it before or forgot that I noticed it):


Maybe someone else wants to clarify, but I don’t think there are legal consequences of not following the CoC? However, there are social consequences. That’s why projects can adopt and enforce CoC without having lawyers by their side. They are social rules, not legal rules. But maybe I’m in a huge misunderstanding here, if so I’d love to be corrected.

As @quantzur has already hinted, folks are expected to follow CoCs, and the consequences of not doing so are explained in the CoC itself. Similarly, I haven’t read GitHub Terms of Service (no, I haven’t), but if I do (unknowingly) something that goes against them, then I will have to face consequences. Since I act in good faith, there’s a 99.9 % chance that I will never experience such consequences, and so I will probably never read the GH ToS.

(I do, however, read CoCs, first because they are shorter and in a language that I can understand, and second because they signal what social issues are important for the project.)

In any case, even though the GitHub warning is a bit small and easy to miss, I think removing the checkbox as @jaraco did at least remove one meaningless decision point for the user, which is expected to follow the CoC no matter if they like it or not, and no matter if they have read it or not.


Your understanding is correct. CoCs are not enforced via legal means, but via social means.


Correct. Signing up for an account here includes a blurb stating that you are expected to follow the PSF CoC.

Exactly. It prevents people from claiming ignorance about how one should act simply because “I didn’t notice that bit of text”.

Sure, but people have been more-or-less trained online to breeze passed text and ignoring it. By asking you to click a box acknowledging you are aware there’s a CoC then there’s no feigning ignorance later (which I have seen happen). It also lets those folks who don’t like CoCs know that this project is most likely one they do not want to participate in.