-
Notifications
You must be signed in to change notification settings - Fork 490
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
Cannot upload files without extensions #6557
Comments
Huh. Sure enough I tried the The user experience is that the screen flashes after I try to upload I believe this is a regression. We always say that any file can be uploaded to Dataverse. Thanks for opening this issue @setgree ! [#|2020-01-22T16:33:51.158+0000|INFO|glassfish 4.1|javax.enterprise.resource.webcontainer.jsf.context|_ThreadID=49;_ThreadName=jk-connector(3);_TimeMillis=1579710831158;_LevelValue=800;| [#|2020-01-22T16:33:51.158+0000|WARNING|glassfish 4.1|javax.enterprise.resource.webcontainer.jsf.lifecycle|_ThreadID=49;_ThreadName=jk-connector(3);_TimeMillis=1579710831158;_LevelValue=900;| [#|2020-01-22T16:33:51.161+0000|SEVERE|glassfish 4.1|javax.enterprise.resource.webcontainer.jsf.context|_ThreadID=49;_ThreadName=jk-connector(3);_TimeMillis=1579710831161;_LevelValue=1000;| |
I agree that we should allow every file type to be uploaded, but I think that's different than whether or not we require a file extension, which I'd see as important for preservation, reproducibility, previewing, etc.. Since this decision predates me, I'd be interested in hearing from @scolapasta @landreev and others that have been here longer. Thanks @setgree for reporting! |
You are welcome, thank you both for the prompt reply! My 2c is to quote
On Code Ocean, the
So I think for reproducibility, this is in line with some practices considered good (or best) by some people. As to previewing, as far as I know, unless the extension-less file is a compiled binary, it can be previewed as plaintext. |
"Dockerfile" is an example of a common filename that doesn't have an extension. Dataverse should support uploading of files called "Dockerfile". |
This wasn't a specific decision we made, but an artifact of the primefaces file upload component. It does appear they've fixed it, but not in a free version yet. (fixed version is 7.0.9) |
Related to being unable to upgrade to minor releases of PrimeFaces: https://github.com/IQSS/dataverse-security/issues/9 (via #6281 (comment) ) |
I reviewed Primefaces release schedule and the good news is that they released 8.0 RC3 11 days ago (RC1 was Dec 2019). Historically, once they've started with RC1, the final release comes soon after (weeks, a few months, depending on how many RCs there are). So I would expect that 8.0 final should come out in February or March and we can upgrade then. If I can find out anything more concrete, I'll add it here (and here: #6634). |
@setgree in case you are blocked getting your project exported from Code Ocean and deposited into Dataverse, I just wanted to point out that there are workarounds available as alternatives to depositing individual files via the drag and drop widget in the UI. Depositing a ZIP of all the files together (User Guide: http://guides.dataverse.org/en/4.19/user/dataset-management.html#compressed-files) and uploading them through the UI or the API will allow for the successful deposit of In the meantime, we are working to get that drag and drop widget fixed, so that we have consistent system behavior across all our upload methods. Also, I'd like to point out that we are working on resolving the duplicate file name #6574 and duplicate MD5 #4813 issues you mentioned in your use case, as well as empty directories #6627 and other technical issues we'd need to resolve to better support depositing capsules from Code Ocean and other tools. Feedback on those issues are welcome! |
Hi @mheppler , FWIW, we encountered the issue with |
@setgree, correct, the drag and drop file upload UI component on the Upload Files should support depositing files without extensions when they are included in a ZIP file. I have just confirmed this with a Code Ocean capsule ZIP on both Harvard Dataverse and Demo Dataverse. I went back to your original comment, to see if there was something in your particular use case that was different than what I was trying, and I think I found something.
Since you got a "duplicates" message on upload for your Also, does your ZIP have a directory structure to it with multiple folders or is it just one compressed folder with all the files directly in it? |
UPDATE: @setgree, I was able to export a Code Ocean capsule ZIP from the DOI you provided, and upload it to Demo Dataverse. The
As I referred to in a previous comment, we are currently working to resolve duplicate file name #6574 and duplicate MD5 #4813 issues related to supporting deposits from Code Ocean or any other upload method. While researching those issues, I have found what appear to be workarounds to get those duplicate files deposited via the Native API (http://guides.dataverse.org/en/4.19/api/native-api.html#add-a-file-to-a-dataset) and Sword API (http://guides.dataverse.org/en/4.19/api/sword.html#add-files-to-a-dataset-with-a-zip-file). Our plan is for all of these various UI and API upload methods to behave consistently, and to improve the messaging so any warnings or errors are clearer. |
Background:
Problem:
run
, no file extension. It's a shell script comprising something like:It's a bash script, but we dropped the extension at some point.
Dataverse does not seem to allow us to upload files without file extensions.
When I drag and drop
run
(or something callednewfile
with arbitrary text in it) via the Dataverse Interface, my browser (Firefox) scrolls to the top of the page, and when I scroll down, the file has not been uploaded.When I tried a few weeks ago (on Chrome) to upload all the materials from https://doi.org/10.24433/CO.4189072.v1, I received a message that
run
andRun_all.R
are duplicates and onlyRun_all.R
was successfully uploaded.The short-term solution:
run
scriptsrun.sh
before they are uploaded to Dataverse.The problem with that short-term solution, long-term:
run.sh
script uploaded, for instance).The ideal solution (from our POV):
The text was updated successfully, but these errors were encountered: