From 59aeb996bb26d4dd715d32288b549e9df1a1d5f4 Mon Sep 17 00:00:00 2001 From: mvdbeek Date: Sun, 13 Dec 2020 13:02:22 +0100 Subject: [PATCH 1/6] Replace StreamBall, replace tarballs with zip The way StreamBall writes to the wsgi response just doesn't work for ASGI frameworks. The zipstream method seems superior in that it creates a uncompressed zip archive and doesn't need a tempfile. Additionally I think it makes sense to return zip files, as that is probably the most well known compression format, and we could replace this conditionally with https://www.nginx.com/resources/wiki/modules/zip/ (while we also work on creating archives in a celery worker). zipstream was one of the suggested libraries in https://github.com/galaxyproject/galaxy/issues/9794#issuecomment-631425320 --- .../LibraryFolder/TopToolbar/FolderTopBar.vue | 14 +-- lib/galaxy/datatypes/data.py | 89 +++++-------------- .../dependencies/pipfiles/default/Pipfile | 1 + .../pipfiles/default/pinned-requirements.txt | 1 + lib/galaxy/managers/hdcas.py | 16 ++-- lib/galaxy/selenium/navigation.yml | 5 +- lib/galaxy/tool_util/verify/interactor.py | 11 ++- lib/galaxy/util/streamball.py | 82 ----------------- .../webapps/galaxy/api/history_contents.py | 31 +++---- .../webapps/galaxy/api/library_datasets.py | 83 +++-------------- lib/galaxy/webapps/galaxy/api/tools.py | 18 +++- .../api/test_dataset_collections.py | 24 ++--- lib/galaxy_test/api/test_tools.py | 10 ++- .../selenium/test_library_contents.py | 3 +- packages/data/requirements.txt | 1 + 15 files changed, 104 insertions(+), 285 deletions(-) delete mode 100644 lib/galaxy/util/streamball.py diff --git a/client/src/components/LibraryFolder/TopToolbar/FolderTopBar.vue b/client/src/components/LibraryFolder/TopToolbar/FolderTopBar.vue index d2770377325..6f759740bc0 100644 --- a/client/src/components/LibraryFolder/TopToolbar/FolderTopBar.vue +++ b/client/src/components/LibraryFolder/TopToolbar/FolderTopBar.vue @@ -105,20 +105,10 @@ class="dropdown dataset-manipulation mr-1" v-if="dataset_manipulation" > - -