dash-uploader icon indicating copy to clipboard operation
dash-uploader copied to clipboard

[proposal] merge into dash-core-components

Open MM-Lehmann opened this issue 4 years ago • 4 comments

I think quite some people are not happy with the standard dcc.Upload component as it simply does not work with large files and causes the entire app to crash. You component looks very robust now and thus I would propose to start the discussion at github.com/plotly/dash whether they want to include your component...

MM-Lehmann avatar Jun 06 '20 17:06 MM-Lehmann

Thanks for the suggestion. That is valid point. The dcc.Upload really needs an alternative for large files, and that was my motivation for forking the dash-resumable-upload and trying to make it easily accessible for anyone.

Merging into dash-core-components or similar has it's pros and cons. Maybe it would be good to discuss about the possibility. Perhaps the plotly community forum is the best place to open a discussion? Or GitHub page of dcc?

fohrloop avatar Jun 06 '20 18:06 fohrloop

I think it is a good idea, we should be able to have a capable upload component right out of the box... Hey @alexcjohnson , what do you think about that?

GitHunter0 avatar Oct 04 '23 14:10 GitHunter0

Thanks for the ping @GitHunter0! I haven't used dash-uploader myself but it looks great - I know we've heard frustrations with dcc.Upload, and I agree that it's pretty basic. So yes, I wholeheartedly support the idea of bringing this into dcc (you're probably all aware but please note this is part of the main dash repo now). Would also take care of #122 😎

A couple of things to note:

  • Not 100% clear to me whether this should be a flavor of dcc.Upload or a new component. There's a decent amount of overlap between the two use cases but also some important differences. For instance a lot of dcc.Upload use cases never intend to save the files, they're just uploading data to be analyzed during the user's session.
  • There's a lot of really cool functionality in here! I suspect though that we can make some of it into more standard Dash usage, like could du.callback be a regular dash.callback?
  • The bundle is fairly large for this component, which means when this is included in dcc it should be done as an async chunk.

alexcjohnson avatar Oct 10 '23 22:10 alexcjohnson

@alexcjohnson , I really appreciate your willingness to incorporate dash-uploader, it is a very important component for many use-cases, so the merger would be a relief.

  • Not 100% clear to me whether this should be a flavor of dcc.Upload or a new component.

Yes, keeping them separately might be a good idea, each one with its own features.

  • like could du.callback be a regular dash.callback

Also a good call, du.callback() can be confusing for the beginning users.

GitHunter0 avatar Oct 11 '23 03:10 GitHunter0