girder-large-image 1.27.3.dev24__tar.gz → 1.27.3.dev28__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/PKG-INFO +1 -1
  2. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/__init__.py +16 -6
  3. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image.egg-info/PKG-INFO +1 -1
  4. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image.egg-info/requires.txt +2 -2
  5. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/LICENSE +0 -0
  6. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/README.rst +0 -0
  7. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/constants.py +0 -0
  8. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/girder_tilesource.py +0 -0
  9. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/loadmodelcache.py +0 -0
  10. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/models/__init__.py +0 -0
  11. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/models/image_item.py +0 -0
  12. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/rest/__init__.py +0 -0
  13. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/rest/item_meta.py +0 -0
  14. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/rest/large_image_resource.py +0 -0
  15. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/rest/tiles.py +0 -0
  16. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/eventStream.js +0 -0
  17. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/extra/.gitignore +0 -0
  18. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/index.js +0 -0
  19. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/main.js +0 -0
  20. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/package.json +0 -0
  21. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/routes.js +0 -0
  22. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/stylesheets/fileList.styl +0 -0
  23. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/stylesheets/imageViewerSelectWidget.styl +0 -0
  24. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/stylesheets/itemList.styl +0 -0
  25. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/stylesheets/itemView.styl +0 -0
  26. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/stylesheets/itemViewCodemirror.styl +0 -0
  27. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/stylesheets/largeImageConfig.styl +0 -0
  28. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/stylesheets/metadataWidget.styl +0 -0
  29. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/templates/imageViewerSelectWidget.pug +0 -0
  30. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/templates/itemList.pug +0 -0
  31. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/templates/itemView.pug +0 -0
  32. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/templates/itemViewCodemirror.pug +0 -0
  33. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/templates/largeImageConfig.pug +0 -0
  34. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/templates/largeImage_fileAction.pug +0 -0
  35. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/templates/metadataWidget.pug +0 -0
  36. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/templates/metadatumEditWidget.pug +0 -0
  37. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/configView.js +0 -0
  38. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/fileList.js +0 -0
  39. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/imageViewerSelectWidget.js +0 -0
  40. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/imageViewerWidget/base.js +0 -0
  41. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/imageViewerWidget/geojs.js +0 -0
  42. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/imageViewerWidget/index.js +0 -0
  43. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/imageViewerWidget/leaflet.js +0 -0
  44. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/imageViewerWidget/openlayers.js +0 -0
  45. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/imageViewerWidget/openseadragon.js +0 -0
  46. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/imageViewerWidget/setFrameQuad.js +0 -0
  47. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/imageViewerWidget/slideatlas.js +0 -0
  48. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/index.js +0 -0
  49. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/itemList.js +0 -0
  50. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/itemView.js +0 -0
  51. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/itemViewCodemirror.js +0 -0
  52. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/itemViewWidget.js +0 -0
  53. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/views/metadataWidget.js +0 -0
  54. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/vue/components/CompositeLayers.vue +0 -0
  55. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/vue/components/DualInput.vue +0 -0
  56. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/vue/components/FrameSelector.vue +0 -0
  57. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/vue/components/HistogramEditor.vue +0 -0
  58. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/vue/components/PresetsMenu.vue +0 -0
  59. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/vue/utils/clamp.js +0 -0
  60. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/vue/utils/colors.js +0 -0
  61. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/vue/utils/drag.js +0 -0
  62. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image/web_client/webpack.helper.js +0 -0
  63. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image.egg-info/SOURCES.txt +0 -0
  64. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image.egg-info/dependency_links.txt +0 -0
  65. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image.egg-info/entry_points.txt +0 -0
  66. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image.egg-info/not-zip-safe +0 -0
  67. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/girder_large_image.egg-info/top_level.txt +0 -0
  68. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/pyproject.toml +0 -0
  69. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/setup.cfg +0 -0
  70. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/setup.py +0 -0
  71. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/test_girder/__init__.py +0 -0
  72. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/test_girder/conftest.py +0 -0
  73. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/test_girder/girder_utilities.py +0 -0
  74. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/test_girder/test_large_image.py +0 -0
  75. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/test_girder/test_tiles_rest.py +0 -0
  76. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/test_girder/test_web_client.py +0 -0
  77. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/test_girder/web_client_specs/.eslintrc +0 -0
  78. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/test_girder/web_client_specs/imageViewerSpec.js +0 -0
  79. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/test_girder/web_client_specs/largeImageSpec.js +0 -0
  80. {girder-large-image-1.27.3.dev24 → girder-large-image-1.27.3.dev28}/test_girder/web_client_specs/otherFeatures.js +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: girder-large-image
3
- Version: 1.27.3.dev24
3
+ Version: 1.27.3.dev28
4
4
  Summary: A Girder plugin to work with large, multiresolution images.
5
5
  Home-page: https://github.com/girder/large_image
6
6
  Author: Kitware, Inc.
@@ -17,6 +17,7 @@
17
17
  import datetime
18
18
  import json
19
19
  import re
20
+ import threading
20
21
  import warnings
21
22
  from importlib.metadata import PackageNotFoundError
22
23
  from importlib.metadata import version as _importlib_version
@@ -60,6 +61,7 @@ except PackageNotFoundError:
60
61
 
61
62
 
62
63
  mimetypes = None
64
+ _configWriteLock = threading.RLock()
63
65
 
64
66
 
65
67
  # Girder 3 is pinned to use pymongo < 4; its warnings aren't relevant until
@@ -496,12 +498,20 @@ def yamlConfigFileWrite(folder, name, user, yaml_config):
496
498
  yaml.safe_load(yaml_config)
497
499
  item = Item().createItem(name, user, folder, reuseExisting=True)
498
500
  existingFiles = list(Item().childFiles(item))
499
- upload = Upload().createUpload(
500
- user, name, 'item', item, size=len(yaml_config), mimeType='text/yaml',
501
- save=True)
502
- Upload().handleChunk(upload, yaml_config)
503
- for file in existingFiles:
504
- File().remove(file)
501
+ if (len(existingFiles) == 1 and
502
+ existingFiles[0]['mimeType'] == 'text/yaml' and
503
+ existingFiles[0]['name'] == name):
504
+ upload = Upload().createUploadToFile(
505
+ existingFiles[0], user, size=len(yaml_config))
506
+ else:
507
+ upload = Upload().createUpload(
508
+ user, name, 'item', item, size=len(yaml_config),
509
+ mimeType='text/yaml', save=True)
510
+ newfile = Upload().handleChunk(upload, yaml_config)
511
+ with _configWriteLock:
512
+ for entry in list(Item().childFiles(item)):
513
+ if entry['_id'] != newfile['_id'] and len(Item().childFiles(item)) > 1:
514
+ File().remove(entry)
505
515
 
506
516
 
507
517
  # Validators
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: girder-large-image
3
- Version: 1.27.3.dev24
3
+ Version: 1.27.3.dev28
4
4
  Summary: A Girder plugin to work with large, multiresolution images.
5
5
  Home-page: https://github.com/girder/large_image
6
6
  Author: Kitware, Inc.
@@ -1,7 +1,7 @@
1
1
  girder>=3.1.18
2
2
  girder-jobs>=3.0.3
3
- large_image>=1.27.3.dev24
3
+ large_image>=1.27.3.dev28
4
4
 
5
5
  [tasks]
6
- large-image-tasks[girder]>=1.27.3.dev24
6
+ large-image-tasks[girder]>=1.27.3.dev28
7
7
  girder-worker[girder]>=0.6.0