MetabolicAtlas / standard-GEM

The standard for open-source GEMs on GitHub
https://www.biorxiv.org/content/10.1101/2023.03.21.512712
Creative Commons Attribution 4.0 International
18 stars 5 forks source link

Require tagged releases to Zenodo #14

Closed Midnighter closed 3 years ago

Midnighter commented 4 years ago

You're doing this for the yeastGEM and I think it's extremely important. Each tagged version (GitHub release) will automatically be deposited on Zenodo via their integration. This makes that exact model available from an unchanging resource and the exact version can be cited with a DOI.

mihai-sysbio commented 4 years ago

Personally, I've been struggling with this idea. On one hand, it's a great solution to the issue of providing storage and DOIs for releases. On the other, for somebody new to GitHub enabling Zenodo be too daunting.

Currently, this is how this is described in the standard:

Additionally, the /README.md file should contain Zenodo badge. As soon as the first public release is in made, the repository must be archived via Zenodo, and the corresponding badge be updated. A default is provided in the file.

With a should for the badge, and a must for Zenodo, the language is a bit unclear. There's also a timing angle - the standard is meant to evolve, so requirements are meant to change, ie we don't have to impose all requirements from the beginning.

What would be best - should or must? Anyway, I think the text description can be improved.

Midnighter commented 4 years ago

This is a pretty clear guide, do you really think it's daunting? I'm obviously biased but I think the possibility to track model use in publication by DOI in future is worth the effort.

JonathanRob commented 4 years ago

@Midnighter I must admit that I don't quite understand the advantage of citing a DOI over an exact version number, as is done with other software/packages. However, your point regarding GitHub (Microsoft) having the power to revoke access was enough to convince me.

Midnighter commented 4 years ago

I see three key advantages:

P.S.: I just realized we should do this for COBRApy, too, since it's driven by academics unlike many other software packages. :wink:

JonathanRob commented 4 years ago

Great, thanks for the clarification!

mihai-sysbio commented 4 years ago

do you really think it's daunting?

For somebody who just created a GH account, I'd think so. If we come back question of must vs should - when using Zenodo is a must, any repo which aims to follow the standard but lacks this would be deemed as "not standard compliant". In the case of new adopters, it might be too much to ask. With a should we recommend using Zenodo, but don't penalize when it's not used. My expectation is that more experienced users would choose Zenodo anyway, simply because of the advantages nicely laid out (thanks @Midnighter, copied over to the wiki for further reference). And maybe in a year or two, with enough adopters, it would make sense to bump this up from a "should" to a "must". Would this sound reasonable, or is it better to go directly to must?

mihai-sysbio commented 3 years ago

I'm not sure why merging the PR did not close the issue, so I'm closing this manually. Please reopen if necessary.