Skip to content

Publish Dataset to FigShare#6169

Open
dwaring87 wants to merge 46 commits into
masterfrom
topic/figshare_integration
Open

Publish Dataset to FigShare#6169
dwaring87 wants to merge 46 commits into
masterfrom
topic/figshare_integration

Conversation

@dwaring87

@dwaring87 dwaring87 commented Jun 18, 2026

Copy link
Copy Markdown
Member

Description

This PR does a few things:

  • improvements to the dataset detail page:

    • visual improvements to summary table
    • UX improvements to editing dataset description and visibility
    • moved outlier detection, analysis tools, and compatibility checks to separate sub-sections
    • ensures only the owner can view a private dataset
    • allows public datasets to be viewed by anyone
  • generate dataset archives and publish them to figshare

    • the owner of the dataset can generate an archive of the dataset
      • this is a static snapshot of the data in the dataset at the time the archive is generated
      • additional data types that are not explicitly defined in the dataset are also included (ie accessions are included if field trials are in the dataset, even if accessions are not explicitly defined by the dataset)
      • the data is stored as plain-text files (.csv, .vcf, etc) in a dataset archive directory
      • the owner and other users (if the dataset is public) can download the archived files
    • the owner of the dataset can upload the archived files to FigShare
      • the user can choose to associate the files with an existing FigShare dataset or create a new one
      • the FigShare dataset links back to the breedbase dataset
    • the owner can choose to have a DOI generated from the breedbase dataset detail page
    • the owner can publish the FigShare dataset / make it public from the breedbase dataset detail page
  • updated general docs for figshare and included a section on publishing datasets

To enable the publishing feature:

The sgn_local.conf will need to be updated to include the FigShare OAuth client details

<dataset_archive_clients>
    <figshare>
        type            figshare
        display_name    FigShare
        client_id       xxxx
        client_secret   yyyyyyyy
        api_url         https://api.figshare.com/v2
        web_url         https://figshare.com
        user_path       /account/home
        auth_path       /account/applications/authorize
        redirect_path   /dataset/publish/authorize
        category_id     23932
    </figshare>
</dataset_archive_clients>

The client_id and client_secret can be obtained on FigShare:

  1. Click your profile photo in the top right
  2. Integrations
  3. Under Applications, create a new Application
  4. Enter the Name, Description, and the callback URL which is https://{your breedbase instance.com}/dataset/publish/authorize (FigShare doesn't accept localhost as a valid callback - you'll have to use a publicly accessible domain for testing)

Copy the client_id and client_secret to the sgn_local.conf file

Fixes #6073

Checklist

  • Refactoring only
  • Documentation only
  • Fixture update only
  • Bug fix
    • The relevant issue has been closed.
    • Further work is required.
  • New feature
    • Relevant tests have been created and run.
    • Data was added to the fixture
      • Data was added via a patch in /t/data/fixture/patches/.
    • User-Facing Change
      • The user manual in /docs has been updated.
    • Any new Perl has been documented using perldoc.
    • Any new JavaScript has been documented using JSDoc.
    • Any new legacy JavaScript has been moved from /js to /js/source/legacy.

improve display of edit description field
only allowed a user to edit a dataset if they are the owner
selectively show make public / make private buttons
move outlier detection and analysis tools to collabsible sections
generate breeding programs and locations
…essions class

use this function to get rows of accession properties for a subset of accessions (by id)
…details page, remove from dataset, download files
use promises to make it easier to understand
to better provide status feedback to user
improve confirmation message when uploading files
@dwaring87 dwaring87 linked an issue Jun 18, 2026 that may be closed by this pull request
@dwaring87 dwaring87 force-pushed the topic/figshare_integration branch from 1671387 to cc282e0 Compare June 22, 2026 11:42
@lukasmueller lukasmueller requested review from lukasmueller and ryan-preble and removed request for lukasmueller June 22, 2026 15:33
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.

Publish Datasets and assign a DOI

1 participant