Skip to content

Implementation of RFC 0072 - Uppy uploader UI for pluggable transfer types #2994

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

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

Conversation

mirekys
Copy link

@mirekys mirekys commented Mar 7, 2025

❤️ Thank you for your contribution!

Description

This PR implements UI changes from RFC 0072 - introduction of pluggable transfer types. It provides
option to use Uppy.io uploader, leveraging the Multipart TransferType instead of standard RDM uploader UI.

Note: needs inveniosoftware/invenio-rdm-records#1930

Checklist

Ticks in all boxes and 🟢 on all GitHub actions status checks are required to merge:

Frontend

Reminder

By using GitHub, you have already agreed to the GitHub’s Terms of Service including that:

  1. You license your contribution under the same terms as the current repository’s license.
  2. You agree that you have the right to license your contribution under the current repository’s license.

@mirekys mirekys force-pushed the contribution-custom-fileuploader branch 2 times, most recently from 52f6bf6 to a74d42c Compare May 21, 2025 10:39
@@ -1476,6 +1476,8 @@ def github_link_render(record):
APP_RDM_SUBCOMMUNITIES_LABEL = "Subcommunities"
"""Label for the subcommunities in the community browse page."""

APP_RDM_DEPOSIT_NG_FILES_UI = False
Copy link
Contributor

Choose a reason for hiding this comment

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

for me a bool configuration variable should be called with suffix _ENABLED. if we want to use it as it is it should get a string where we have the option for two literals: Literal["multipart", "singlepart"], so the idea is that we could add more options afterward. i am not sure if we need this possibility

Copy link
Author

@mirekys mirekys May 22, 2025

Choose a reason for hiding this comment

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

Thanks Christoph, good point, I'll add the suffix. This uploader implementation is meant as a toggleable replacement to the current one, while supporting multiple transfer types (Uppy determines whether to use singlepart or multipart transfer per each individual file, depending on its fsize). As for the second approach, enumerating allowed transfer types (I'm also not sure if there's a case for prohibiting multipart uploads?), uploader UI has already knowledge of it from: https://github.com/inveniosoftware/invenio-app-rdm/pull/2994/files#diff-a779205cb118ac986e91089f0dcc0ed648e4b7a32b252151438c76a8fab7f10fR390-R391, populated by config key: https://github.com/inveniosoftware/invenio-records-resources/pull/604/files#diff-ba4a689688ee572bffc8d2dccf376ed194810cc1ba8e32b6df22832d2acc9ebeR29-R35

@mirekys mirekys force-pushed the contribution-custom-fileuploader branch 4 times, most recently from ada060d to 1904fbb Compare May 27, 2025 13:13
@mirekys mirekys force-pushed the contribution-custom-fileuploader branch 5 times, most recently from c8dd0ed to 2d22c07 Compare June 3, 2025 14:15
@mirekys mirekys force-pushed the contribution-custom-fileuploader branch 6 times, most recently from 3dd0dd4 to 3011a9b Compare June 6, 2025 12:16
* addresses the UI part of RFC 0072

* adds feature flag `APP_RDM_DEPOSIT_NG_FILES_UI` to enable the Uppy uploader UI

* inveniosoftware/rfcs#91
@mirekys mirekys force-pushed the contribution-custom-fileuploader branch from 3011a9b to 4d7e242 Compare June 6, 2025 14:00
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.

2 participants