Skip to content

Organization-wide code of conduct and contributing files#17

Merged
dpo merged 5 commits intoJuliaSmoothOptimizers:mainfrom
MaxenceGollier:organization-wide
Mar 30, 2026
Merged

Organization-wide code of conduct and contributing files#17
dpo merged 5 commits intoJuliaSmoothOptimizers:mainfrom
MaxenceGollier:organization-wide

Conversation

@MaxenceGollier
Copy link
Copy Markdown
Contributor

closes #13

@dpo, @tmigot, @amontoison

This is very basic but we can start from here.

  • I copy pasted the code of conduct from BestieTemplate: currently, @tmigot is the one responsible for enforcement (i just copied from SolverCore.jl) but we should definitely discuss this.
  • I copy pasted the contributing file from the website but i think we should improve it because it is quite unclear (as someone who started contributing "recently" I can say this wasn't very helpful).

For the issue template and pr template, we can do it in a separate PR, I am not sure that @amontoison wants these but maybe I am wrong.

Co-authored-by: Dominique <dominique.orban@gmail.com>
@amontoison
Copy link
Copy Markdown
Member

What really scares me in terms of development is the use of AI agents.
I have seen so many wrong PRs because of it.
People take for granted the content provided by LLMs, which puts some pressure on reviewers.
I am tempted to ask contributors to specify this when they open a PR, so that I trust the content less.

@dpo
Copy link
Copy Markdown
Member

dpo commented Mar 26, 2026

I copy pasted the contributing file from the website but i think we should improve it because it is quite unclear (as someone who started contributing "recently" I can say this wasn't very helpful).

@MaxenceGollier What information would make it easier for new contributors?

@MaxenceGollier
Copy link
Copy Markdown
Contributor Author

MaxenceGollier commented Mar 27, 2026

@dpo

  1. Make clear that a contribution should come with unit tests and documentation
  2. Explain good practices: running the julia formatter, not commiting the Manifest.toml, keeping PRs focused on one feature and check that the diff file is not absurdely large, make sure that in place functions do no allocate are a few examples.
  3. Explain forks
  4. Perhaps explain a few good developper workflows: Use Revise.jl, Pkg.develop if you are editing multiple packages at once, etc.

I remember that it took me a while during my first internship to understand all of this.

@dpo
Copy link
Copy Markdown
Member

dpo commented Mar 28, 2026

@MaxenceGollier I’ll ad 1 and 2 to #19. I think 3 and 4 belong in a general tutorial on contributing to julia projects. We can add a few useful links in a separate document. Does that sound ok?

@MaxenceGollier
Copy link
Copy Markdown
Contributor Author

Yes, this is ready then.

@MaxenceGollier MaxenceGollier marked this pull request as ready for review March 28, 2026 15:34
Copilot AI review requested due to automatic review settings March 28, 2026 15:34
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds organization-level community documentation to standardize how people contribute and how conduct is enforced across JuliaSmoothOptimizers.

Changes:

  • Add a root-level CONTRIBUTING.md describing where to file issues/discussions and linking to solver-creation guidance.
  • Add a root-level CODE_OF_CONDUCT.md based on Contributor Covenant v2.1, including enforcement contacts.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.

File Description
CONTRIBUTING.md Introduces contribution and support guidance, with links to issues/discussions and solver tutorial.
CODE_OF_CONDUCT.md Adds a Contributor Covenant-based code of conduct and enforcement/reporting section.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement:
`tangi.migot@gmail.com` and `dominique.orban@gmail.com`.
Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The email addresses are wrapped in inline code formatting, which prevents GitHub from auto-linking them. Consider using plain text or a mailto link so reporters can click/tap to contact the enforcement team more easily.

Suggested change
`tangi.migot@gmail.com` and `dominique.orban@gmail.com`.
[tangi.migot@gmail.com](mailto:tangi.migot@gmail.com) and [dominique.orban@gmail.com](mailto:dominique.orban@gmail.com).

Copilot uses AI. Check for mistakes.
Focused suggestion and requests can also be opened as issues.
Before opening a pull request, start an issue or a discussion on the topic, please.

If you want to ask a question that is not suited for a bug report, feel free to start a discussion [here](https://github.com/JuliaSmoothOptimizers/Organization/discussions).
Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The discussion link points to a specific repo path (JuliaSmoothOptimizers/Organization/discussions). If the intent is to use organization-level Discussions, the canonical URL is https://github.com/orgs/JuliaSmoothOptimizers/discussions (also used elsewhere in this repo). Using the wrong URL will 404 or send users to the wrong place.

Suggested change
If you want to ask a question that is not suited for a bug report, feel free to start a discussion [here](https://github.com/JuliaSmoothOptimizers/Organization/discussions).
If you want to ask a question that is not suited for a bug report, feel free to start a discussion [here](https://github.com/orgs/JuliaSmoothOptimizers/discussions).

Copilot uses AI. Check for mistakes.
For our packages, it should be a link like `https://github.com/JuliaSmoothOptimizers/PACKAGE.jl`.
For our tutorials, you can open an issue here or in <https://github.com/JuliaSmoothOptimizers/JSOTutorials.jl>.

Focused suggestion and requests can also be opened as issues.
Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wording/grammar: "Focused suggestion and requests" reads incorrect (singular/plural mismatch). Consider rephrasing to something like "Focused suggestions and requests" or similar for clarity.

Suggested change
Focused suggestion and requests can also be opened as issues.
Focused suggestions and requests can also be opened as issues.

Copilot uses AI. Check for mistakes.

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement:
`tangi.migot@gmail.com` and `dominique.orban@gmail.com`.
Copy link

Copilot AI Mar 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The enforcement contact is currently listed as two personal email addresses. Consider using a role-based/shared address (or a GitHub contact mechanism) to avoid tying enforcement to individual personal accounts and to reduce ongoing maintenance if responsibilities change.

Suggested change
`tangi.migot@gmail.com` and `dominique.orban@gmail.com`.
`code-of-conduct@project.org` (or via the repository's contact links on GitHub).

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Member

@dpo dpo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you.

@dpo dpo merged commit 9752feb into JuliaSmoothOptimizers:main Mar 30, 2026
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add an organization-wide contributing.md and a code_of_conduct.md

4 participants