Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add manifest.contributors config option #5322

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

bentsherman
Copy link
Member

Close #4034

Deprecate manifest.author, remove manifest.maintainer from #5314 , and add manifest.contributors which is a list of maps. The maps are converted to records under the hood.

Contribution types include "author" and "maintainer". The BCO spec is based on PAV ontology which includes "createdBy", "authoredBy", and "curatedBy". I think we can map author -> authoredBy and maintainer -> curatedBy. Not sure that we need a "creator" option separate from "author". But this ontology seems to be the standard across multiple provenance formats.

Signed-off-by: Ben Sherman <bentshermann@gmail.com>
Copy link

netlify bot commented Sep 23, 2024

Deploy Preview for nextflow-docs-staging ready!

Name Link
🔨 Latest commit c53cdc2
🔍 Latest deploy log https://app.netlify.com/sites/nextflow-docs-staging/deploys/66f1a7aba4c62d000888607e
😎 Deploy Preview https://deploy-preview-5322--nextflow-docs-staging.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

- `email`: the contributor's email address
- `github`: the contributor's GitHub URL
- `contribution`: list of contributions, can be any of `'author'`, `'maintainer'`
- `orcid`: the contributor's [ORCID](https://orcid.org/)
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
- `orcid`: the contributor's [ORCID](https://orcid.org/)
- `orcid`: the contributor's [ORCID](https://orcid.org/) URL

- `affiliation`: the contributor's affiliated organization
- `email`: the contributor's email address
- `github`: the contributor's GitHub URL
- `contribution`: list of contributions, can be any of `'author'`, `'maintainer'`
Copy link
Member

Choose a reason for hiding this comment

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

List of contributions? Or type of contribution? It has to be a string, so people have to choose right?

Copy link
Member

Choose a reason for hiding this comment

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

Ah no it can be multiple, nice 👍🏻

Suggested change
- `contribution`: list of contributions, can be any of `'author'`, `'maintainer'`
- `contribution`: list of contribution types, can include any of `'author'`, `'maintainer'`

Copy link
Contributor

Choose a reason for hiding this comment

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

ok, so it can be 'author', 'maintainer', or ['author', 'maintainer'].

Copy link
Member

Choose a reason for hiding this comment

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

Yeah, always a list though. So ['author']

Copy link
Contributor

Choose a reason for hiding this comment

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

Gotcha

Copy link
Contributor

Choose a reason for hiding this comment

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

Or contribution roles?

As actually I personally would have three roles: author (original person who started), maintainer (someone who is currently leading the development) and a contributor (someone who occasionally/regularly throws things in)

Copy link
Contributor

Choose a reason for hiding this comment

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

I like @jfy133 's thinking, though maybe contributor is harder to map to Ben's ontology.

Copy link
Member Author

Choose a reason for hiding this comment

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

I'm not super opinionated about the contribution types, as long as it doesn't cause problems with supporting things like BCO

"author" and "maintainer" seem to map to "authoredBy" and "curatedBy". if we add "contributor", I could just map that also to "curatedBy" in the BCO. that's not the end of the world, but it would minimize the contribution of "maintainers"

also, I wonder if it's necessary to include small contributors in the manifest when you could just credit them in the README

Copy link
Contributor

@jfy133 jfy133 Sep 25, 2024

Choose a reason for hiding this comment

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

By occasionally/regularly I didn't necessarily mean small, but rather a person who is not 'running' or 'leading' the point of view.

For example, I currently do most of the day to do managing of bug reports and fixes, user support, and project planning, in nf-core/mag (maintainer), but then I often have @prototaxites helping with reviews and every month or so dropping a chunky bit of new functionality (contributor).

To map to an analogy from academic publishing: the maintainer is the first author (at the given time point), but then a contributor is someone who has still done a good chunk of work worthy of co-authorship in the middle of the list. Versus someone who made a couple of small fixes or docs improvements who would not go into acknowledgements (which here would go into the README).

I think that still maps to the ontology with 'curatedBy' 👍, what I'm proposing is more of a human interpretation thing to make sure the level of acknowledgement of peoples input is fair

Copy link
Member Author

Choose a reason for hiding this comment

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

in that case I would be fine with adding "contributor" and mapping it also to "curatedBy" in the BCO. the kind of contributions you mentioned are comparable to that of a maintainer IMO

Copy link
Contributor

@pinin4fjords pinin4fjords left a comment

Choose a reason for hiding this comment

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

Nice flexible solution, makes sense

- `affiliation`: the contributor's affiliated organization
- `email`: the contributor's email address
- `github`: the contributor's GitHub URL
- `contribution`: list of contributions, can be any of `'author'`, `'maintainer'`
Copy link
Contributor

Choose a reason for hiding this comment

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

I like @jfy133 's thinking, though maybe contributor is harder to map to Ben's ontology.

Copy link
Member

@pditommaso pditommaso left a comment

Choose a reason for hiding this comment

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

Worth to add some tests in the Tower client. This info needs likely to be collected in Platform

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Additional manifest config fields
6 participants