scipion-pyworkflow 3.7.0__tar.gz → 3.8.0__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 (168) hide show
  1. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/CHANGES.txt +8 -0
  2. {scipion_pyworkflow-3.7.0/scipion_pyworkflow.egg-info → scipion_pyworkflow-3.8.0}/PKG-INFO +1 -1
  3. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/config.py +19 -0
  4. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/constants.py +2 -1
  5. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/object.py +11 -3
  6. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/plugin.py +7 -3
  7. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/protocol/protocol.py +21 -1
  8. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0/scipion_pyworkflow.egg-info}/PKG-INFO +1 -1
  9. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/LICENSE.txt +0 -0
  10. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/MANIFEST.in +0 -0
  11. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/README.rst +0 -0
  12. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/__init__.py +0 -0
  13. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/apps/__init__.py +0 -0
  14. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/apps/pw_manager.py +0 -0
  15. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/apps/pw_plot.py +0 -0
  16. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/apps/pw_project.py +0 -0
  17. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/apps/pw_protocol_list.py +0 -0
  18. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/apps/pw_protocol_run.py +0 -0
  19. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/apps/pw_run_tests.py +0 -0
  20. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/apps/pw_schedule_run.py +0 -0
  21. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/apps/pw_sleep.py +0 -0
  22. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/apps/pw_sync_data.py +0 -0
  23. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/apps/pw_viewer.py +0 -0
  24. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/exceptions.py +0 -0
  25. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/__init__.py +0 -0
  26. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/browser.py +0 -0
  27. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/canvas.py +0 -0
  28. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/dialog.py +0 -0
  29. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/form.py +0 -0
  30. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/graph.py +0 -0
  31. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/graph_layout.py +0 -0
  32. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/gui.py +0 -0
  33. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/matplotlib_image.py +0 -0
  34. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/plotter.py +0 -0
  35. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/__init__.py +0 -0
  36. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/base.py +0 -0
  37. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/constants.py +0 -0
  38. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/labels.py +0 -0
  39. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/project.py +0 -0
  40. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/searchprotocol.py +0 -0
  41. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/searchrun.py +0 -0
  42. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/steps.py +0 -0
  43. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/utils.py +0 -0
  44. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/variables.py +0 -0
  45. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/viewdata.py +0 -0
  46. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/viewprojects.py +0 -0
  47. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/viewprotocols.py +0 -0
  48. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/project/viewprotocols_extra.py +0 -0
  49. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/text.py +0 -0
  50. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/tooltip.py +0 -0
  51. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/tree.py +0 -0
  52. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/gui/widgets.py +0 -0
  53. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/mapper/__init__.py +0 -0
  54. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/mapper/mapper.py +0 -0
  55. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/mapper/sqlite.py +0 -0
  56. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/mapper/sqlite_db.py +0 -0
  57. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/__init__.py +0 -0
  58. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/config.py +0 -0
  59. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/manager.py +0 -0
  60. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/project.py +0 -0
  61. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/scripts/clean_projects.py +0 -0
  62. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/scripts/config.py +0 -0
  63. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/scripts/create.py +0 -0
  64. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/scripts/edit_workflow.py +0 -0
  65. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/scripts/fix_links.py +0 -0
  66. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/scripts/load.py +0 -0
  67. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/scripts/refresh.py +0 -0
  68. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/scripts/schedule.py +0 -0
  69. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/scripts/stack2volume.py +0 -0
  70. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/project/scripts/stop.py +0 -0
  71. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/protocol/__init__.py +0 -0
  72. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/protocol/bibtex.py +0 -0
  73. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/protocol/constants.py +0 -0
  74. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/protocol/executor.py +0 -0
  75. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/protocol/hosts.py +0 -0
  76. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/protocol/launch.py +0 -0
  77. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/protocol/package.py +0 -0
  78. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/protocol/params.py +0 -0
  79. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/Imagej.png +0 -0
  80. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/chimera.png +0 -0
  81. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/fa-exclamation-triangle_alert.png +0 -0
  82. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/fa-info-circle_alert.png +0 -0
  83. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/fa-search.png +0 -0
  84. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/fa-times-circle_alert.png +0 -0
  85. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/file_vol.png +0 -0
  86. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/loading.gif +0 -0
  87. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/no-image128.png +0 -0
  88. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/scipion_bn.png +0 -0
  89. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/scipion_icon.png +0 -0
  90. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/scipion_icon.svg +0 -0
  91. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/scipion_icon_proj.png +0 -0
  92. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/scipion_icon_projs.png +0 -0
  93. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/scipion_icon_prot.png +0 -0
  94. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/scipion_logo.png +0 -0
  95. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/scipion_logo_normal.png +0 -0
  96. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/scipion_logo_small.png +0 -0
  97. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/arrowDown.png +0 -0
  98. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/arrowUp.png +0 -0
  99. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/background_section.png +0 -0
  100. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/colRowModeOff.png +0 -0
  101. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/colRowModeOn.png +0 -0
  102. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/delete.png +0 -0
  103. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/doc_icon.png +0 -0
  104. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/download_icon.png +0 -0
  105. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/enabled_gallery.png +0 -0
  106. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/galleryViewOff.png +0 -0
  107. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/galleryViewOn.png +0 -0
  108. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/goto.png +0 -0
  109. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/menu.png +0 -0
  110. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/separator.png +0 -0
  111. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/tableViewOff.png +0 -0
  112. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/tableViewOn.png +0 -0
  113. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  114. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  115. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  116. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/volumeOff.png +0 -0
  117. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/showj/volumeOn.png +0 -0
  118. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/sprites.png +0 -0
  119. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/sprites.xcf +0 -0
  120. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/resources/wait.gif +0 -0
  121. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/template.py +0 -0
  122. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/tests/__init__.py +0 -0
  123. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/tests/test_utils.py +0 -0
  124. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/tests/tests.py +0 -0
  125. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/__init__.py +0 -0
  126. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/dataset.py +0 -0
  127. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/echo.py +0 -0
  128. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/graph.py +0 -0
  129. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/log.py +0 -0
  130. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/path.py +0 -0
  131. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/process.py +0 -0
  132. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/profiler.py +0 -0
  133. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/progressbar.py +0 -0
  134. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/properties.py +0 -0
  135. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/reflection.py +0 -0
  136. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/utils.py +0 -0
  137. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/utils/which.py +0 -0
  138. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/viewer.py +0 -0
  139. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/webservices/__init__.py +0 -0
  140. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/webservices/config.py +0 -0
  141. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/webservices/notifier.py +0 -0
  142. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/webservices/repository.py +0 -0
  143. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/webservices/workflowhub.py +0 -0
  144. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflow/wizard.py +0 -0
  145. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/__init__.py +0 -0
  146. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/bibtex.py +0 -0
  147. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/objects.py +0 -0
  148. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/protocols.py +0 -0
  149. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/tests/__init__.py +0 -0
  150. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/tests/test_canvas.py +0 -0
  151. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/tests/test_domain.py +0 -0
  152. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/tests/test_logs.py +0 -0
  153. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/tests/test_mappers.py +0 -0
  154. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/tests/test_object.py +0 -0
  155. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/tests/test_project.py +0 -0
  156. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/tests/test_protocol_execution.py +0 -0
  157. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/tests/test_protocol_export.py +0 -0
  158. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/tests/test_protocol_output.py +0 -0
  159. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/tests/test_streaming.py +0 -0
  160. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/pyworkflowtests/tests/test_utils.py +0 -0
  161. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/requirements.txt +0 -0
  162. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/scipion_pyworkflow.egg-info/SOURCES.txt +0 -0
  163. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/scipion_pyworkflow.egg-info/dependency_links.txt +0 -0
  164. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/scipion_pyworkflow.egg-info/entry_points.txt +0 -0
  165. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/scipion_pyworkflow.egg-info/requires.txt +0 -0
  166. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/scipion_pyworkflow.egg-info/top_level.txt +0 -0
  167. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/setup.cfg +0 -0
  168. {scipion_pyworkflow-3.7.0 → scipion_pyworkflow-3.8.0}/setup.py +0 -0
@@ -1,3 +1,10 @@
1
+ V3.8.0
2
+ users:
3
+ - Inform when a plugin does not import properly
4
+ developers:
5
+ - Handling the name and the suffix to be used for a new output
6
+ - New method: Config.isCondaInstallation
7
+
1
8
  V3.7.0
2
9
  users:
3
10
  - Add protocol is an icon.
@@ -27,6 +34,7 @@ developers:
27
34
  New variable: SCIPION_MAPPER_USE_TEMPLATE. By default uses the template as it was now. If deacivated, instantiation happens on each iteration (less performant) but dev friendly
28
35
  - Adding a parameter to launch jobs (e.g: bash)
29
36
  - Handling item-click event in the treeview dialog
37
+ - Method copyAttributes expanded to manage the complex sets properly
30
38
 
31
39
  V3.6.0
32
40
  users:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: scipion-pyworkflow
3
- Version: 3.7.0
3
+ Version: 3.8.0
4
4
  Summary: Simple workflow platform used in scientific applications, initially developed within the Scipion framework for image processing in Electron Microscopy.
5
5
  Home-page: https://github.com/scipion-em/scipion-pyworkflow
6
6
  Author: J.M. De la Rosa Trevin, Roberto Marabini, Grigory Sharov, Josue Gomez Blanco, Pablo Conesa, Yunior Fonseca Reyna
@@ -527,6 +527,25 @@ class Config:
527
527
  like registering FileHandlers or other stuff not needed when just importing modules."""
528
528
  return cls.SCIPION_HOME_DEFINED != False
529
529
 
530
+ @classmethod
531
+ def isCondaInstallation(cls):
532
+ """ Returns true if the scipion installation is done using conda"""
533
+
534
+ # Get the CONDA_PYTHON_EXE
535
+ # NOTE: This will not work when calling scipion python directly! But should works using the launcher.
536
+ envFolder = os.environ.get("CONDA_PREFIX", None)
537
+
538
+ # No conda variable... virtualenv installation!!
539
+ if envFolder is None:
540
+ return False
541
+ else:
542
+ from pyworkflow.utils import getPython
543
+ # Conda available.... let's check if it is active the same scipion env
544
+ condaExe = os.path.join(envFolder, "bin", "python")
545
+ return condaExe == getPython()
546
+
547
+
548
+
530
549
 
531
550
  # Add bindings folder to sys.path
532
551
  sys.path.append(Config.getBindingsFolder())
@@ -37,12 +37,13 @@ from enum import Enum
37
37
  # will break existing plugins, this number needs to be incremented.
38
38
  CORE_VERSION = '3.0.0'
39
39
 
40
+ # To be removed once consumers (app, some plugins) do not make use of them
40
41
  # Versions
41
42
  VERSION_1 = '1.0.0'
42
43
  VERSION_1_1 = '1.1.0'
43
44
  VERSION_1_2 = '1.2.0'
44
45
  VERSION_2_0 = '2.0.0'
45
- VERSION_3_0 = '3.7.0'
46
+ VERSION_3_0 = '3.8.0'
46
47
 
47
48
  # For a new release, define a new constant and assign it to LAST_VERSION
48
49
  # The existing one has to be added to OLD_VERSIONS list.
@@ -366,10 +366,18 @@ class Object(object):
366
366
  elif isinstance(attr, PointerList):
367
367
  for pointer in otherAttr:
368
368
  attr.append(pointer)
369
- elif isinstance(attr, Scalar) and otherAttr.hasPointer():
370
- attr.copy(otherAttr)
369
+ elif isinstance(attr, Scalar):
370
+ if otherAttr.hasPointer():
371
+ attr.copy(otherAttr)
372
+ else:
373
+ attr.set(otherAttr.get())
371
374
  else:
372
- attr.set(otherAttr.get())
375
+ # Necessary for the correct storage of complex attributes (such as Acquisition or Transform) in
376
+ # heterogeneous sets of sets, like the sets of tilt-series. Those sets imply append to the intermediate
377
+ # level + append to the upper level + update the upper level, passing in the previous method version
378
+ # through the line attr.set(otherAttr.get()), resulting in a None and copying the acquisition of the
379
+ # set to all the elements of the set and losing the transformation info
380
+ setattr(self, name, otherAttr.clone())
373
381
 
374
382
  def __getObjDict(self, prefix, objDict, includeClass, includePointers=True):
375
383
  if prefix:
@@ -112,9 +112,13 @@ class Domain:
112
112
  cls._plugins[name] = m # Register the name to as a plugin
113
113
 
114
114
  # Catch any import exception, warn about it but continue.
115
- except ModuleNotFoundError:
116
- # This is probably due to a priority package like pwchem not being installed
117
- pass
115
+ except ModuleNotFoundError as e:
116
+ if e.name == name:
117
+ # This is probably due to a priority package like pwchem not being installed
118
+ pass
119
+ else:
120
+ logger.warning("Plugin '%s' has import errors: %s. Maybe a missing dependency?. "
121
+ "Is it devel mode and need to be reinstalled?. Ignoring it and continuing." % (name, str(e)))
118
122
  except Exception as e:
119
123
 
120
124
  (pwutils.yellow("WARNING!!: Plugin containing module %s does not import properly. "
@@ -328,7 +328,6 @@ class Protocol(Step):
328
328
  """
329
329
 
330
330
  # Version where protocol appeared first time
331
- _lastUpdateVersion = pw.VERSION_1
332
331
  _stepsCheckSecs = pw.Config.getStepsCheckSeconds()
333
332
  # Protocol develop status: PROD, BETA, NEW
334
333
  _devStatus = pw.PROD
@@ -916,6 +915,27 @@ class Protocol(Step):
916
915
 
917
916
  return s
918
917
 
918
+ def getOutputSuffix(self, outputPrefix):
919
+ """ Return the suffix to be used for a new output.
920
+ For example: output3DCoordinates7.
921
+ It should take into account previous outputs
922
+ and number with a higher value.
923
+ """
924
+ maxCounter = -1
925
+ for attrName, _ in self.iterOutputAttributes():
926
+ suffix = attrName.replace(outputPrefix, '')
927
+ try:
928
+ counter = int(suffix)
929
+ except:
930
+ counter = 1 # when there is not number assume 1
931
+ maxCounter = max(counter, maxCounter)
932
+
933
+ return str(maxCounter + 1) if maxCounter > 0 else '' # empty if not output
934
+
935
+ def getNextOutputName(self, outputPrefix):
936
+ """Return the name to be used for a new output."""
937
+ return outputPrefix + self.getOutputSuffix(outputPrefix)
938
+
919
939
  def copyDefinitionAttributes(self, other):
920
940
  """ Copy definition attributes to other protocol. """
921
941
  for paramName, _ in self.iterDefinitionAttributes():
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: scipion-pyworkflow
3
- Version: 3.7.0
3
+ Version: 3.8.0
4
4
  Summary: Simple workflow platform used in scientific applications, initially developed within the Scipion framework for image processing in Electron Microscopy.
5
5
  Home-page: https://github.com/scipion-em/scipion-pyworkflow
6
6
  Author: J.M. De la Rosa Trevin, Roberto Marabini, Grigory Sharov, Josue Gomez Blanco, Pablo Conesa, Yunior Fonseca Reyna