pygmt icon indicating copy to clipboard operation
pygmt copied to clipboard

Ensure all maintainers can publish PyGMT to Zenodo and make a DOI

Open weiji14 opened this issue 5 years ago • 4 comments

Need to make sure that every core maintainer can reserve a new Zenodo version DOI for PyGMT. Continuing discussion from https://github.com/GenericMappingTools/pygmt/pull/599#discussion_r486769250_. I.e. everyone should be able to click on the green "New version" button (see sceenshot).

PyGMT Zenodo page

Which will take you to a page where there should be a 'Reserve DOI' button somewhere. Click on that, and copy the DOI link to the changelog/release notes for the new PyGMT version (e.g. at #599).

As to why we can't just automate this, see https://github.com/GenericMappingTools/pygmt/pull/599#discussion_r487308959_ (quoted below):

Just to clarify, there's 2 options that I know of to make a Zenodo DOI, each with pros/cons (see also FAQs at https://help.zenodo.org/):

  1. Use the automated Github integration:
  • Pro: It's automated, publishing a release creates the DOI automatiically
  • Con: We don't know the DOI number beforehand, so can't put it into the release notes. Also, I couldn't manage to link it to our current permanent/concept DOI at https://doi.org/10.5281/zenodo.3781524.
  1. Manually reserve a DOI (what was done for PyGMT v0.1.x):
  • Pro: We know the DOI beforehand, so can put it into our release notes. Also more control with the metadata information.
  • Con: It's not automated, I had to manually download the pygmt-v0.1.x.zip file, and upload it to Zenodo. Also as we found out, maybe it's linked only to my account?!!

Either way, would be good to discuss what we want to do :neutral_face:

weiji14 avatar Sep 11 '20 23:09 weiji14

Copying from #599:

I was just checking on some of my own uploads and it seems like only the original creator can upload a new version. This really sucks since we can't use the DOI versioning and have multiple release managers at the same time. I have sent them an email asking is there is a workaround and if not, making that a feature request.

At the moment, it seems like we only have 2 options:

  1. Wei Ji creates new Zenodo uploads forever 😉
  2. We go back to making a new upload for every release instead of creating a new version. This would allow anyone to do the upload. Con is that we have to copy authors and descriptions every time.

I don't think the GitHub automation is an option since it doesn't allow reserving the DOI. In the end, I found it more trouble than it's worth. One thing we could do is build our own automation using the Zenodo API. It lets us reserve DOIs and make uploads. But that could be a lot of work.

leouieda avatar Sep 15 '20 09:09 leouieda

After some more searching, I found that the multi-user feature is on their current roadmap (see https://about.zenodo.org/roadmap/), and due for (Northern Hemisphere) autumn 2020 according to https://github.com/zenodo/zenodo/issues/35 and https://github.com/zenodo/zenodo/issues/151. So maybe I won't need to do this forever after all :laughing:

weiji14 avatar Sep 15 '20 11:09 weiji14

And here I thought that I had you hooked for good...

leouieda avatar Sep 15 '20 13:09 leouieda

Just an update, things appear to have been pushed out to (Northern Hemisphere) autumn 2021 (see https://github.com/zenodo/zenodo/issues/810#issuecomment-753917462). The multi-curator feature will likely come to InvenioRDM in May 2021 (see https://inveniosoftware.org/products/rdm/roadmap and https://github.com/inveniosoftware/invenio-communities), and once Zenodo migrates their system to InvenioRDM (v4?) in the near term (hopefully sometime this year in 2021), we'll be able to add other PyGMT maintainers into the list.

Zenodo roadmap

weiji14 avatar May 02 '21 23:05 weiji14

Some updates: https://blog.zenodo.org/2022/12/07/2022-12-07-zenodo-on-inveniordm/

Let's expect a new Zenodo in Autumn 2023.

seisman avatar Apr 07 '23 03:04 seisman

Hi all, on Fatiando we got around this by creating an account for the organisation, which all maintainers will have access. We then asked the Zenodo support to transfer all existing uploads to that account. See https://github.com/fatiando/community/pull/98#issuecomment-1471725321

leouieda avatar Apr 08 '23 09:04 leouieda

Let's expect something new on Sep. 29 https://blog.zenodo.org/2023/09/06/2023-09-06-zenodo-rdm/.

seisman avatar Sep 16 '23 14:09 seisman

The Zenodo migration has been done today (see https://blog.zenodo.org/2023/10/13/2023-10-13-zenodo-rdm/), although currently it's slow.

Here is the latest record of the PyGMT package (https://zenodo.org/records/8303186) and here is the "GenericMappingTools" community (https://zenodo.org/communities/generic-mapping-tools).

seisman avatar Oct 13 '23 12:10 seisman

@PaulWessel Zenodo has migrated its system to InvenioRDM. Now it allows multiple members with different roles (Reader, Curator, Manager and Owner) to add a new record or edit an existing record (see https://help.zenodo.org/docs/about/whats-new/#communities-members) to the GMT community.

Currently, you're the only member (Owner) of the GMT Community. Could you please add me as an "Owner", so that I can invite other PyGMT maintainers as "Curators" if necessary?

seisman avatar Oct 20 '23 10:10 seisman

Thanks @seisman! Once you have Owner access from @PaulWessel, could you also also add me and some of the other maintainers to the GMT Community on Zenodo? I'd be happy to walk someone through the Zenodo upload process for the next PyGMT v0.11.0 release (but still happy to do these in the future too :wink:).

weiji14 avatar Oct 23 '23 23:10 weiji14

@weiji14 I've invited you to join the zenodo community. Will invite more people for future release managers.

seisman avatar Oct 24 '23 11:10 seisman

Continuing thread from https://github.com/GenericMappingTools/pygmt/issues/2843#issuecomment-1913149405 (so we don't clutter the v0.11.0 release issue).

  • Reserve a DOI on Zenodo by clicking on "New Version"

@weiji14 Not sure what's happening. I can create a new version for GMT, but can't do it for PyGMT.

For PyGMT: image

Hmm, I can see the 'New version' button on my side.

image

On my end, I only have 'Curator' role access to the 'Generic Mapping Tools' Zenodo community, but I see that you and Paul are 'Owner's. Maybe there is some permissions setting you need to set? I can't seem to find any settings about transferring ownership on my end.

Strangely enough, I can create a new version for GMT, but not for DCW-GMT. Is it because there was a recent GMT 6.5.0 release that uses the new Zenodo community permissions setup? Maybe I will need to create a new PyGMT release this time, and then you can do it next time?

weiji14 avatar Jan 28 '24 02:01 weiji14

Is it because there was a recent GMT 6.5.0 release that uses the new Zenodo community permissions setup?

It's likely.

Maybe I will need to create a new PyGMT release this time, and then you can do it next time?

Yes, please give it a try.

seisman avatar Jan 28 '24 15:01 seisman

I filed a support ticket a few days ago and here is the reply:

The records were created prior to the migration of Zenodo last October and they were not automatically available for community curation - like newer records. Since the uploaders are also owners of this community, we enabled the records curation for all the owners / curators of the community.

Now I can see the "Edit" and "New Version" buttons for all records in the GMT community.

Closing.

seisman avatar May 06 '24 13:05 seisman

Awesome! I'll let you do the upload for v0.13.0 :smile:

One thing to note: when downloading the source code zip file from https://github.com/GenericMappingTools/pygmt/releases, the filename will be something like pygmt-0.13.0.zip. You'll need to remember to rename it to pygmt-v0.13.0.zip (as mentioned on the release checklist) before uploading to Zenodo.

weiji14 avatar May 06 '24 22:05 weiji14