looper 2.0.0a3__tar.gz → 2.0.1__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 (82) hide show
  1. {looper-2.0.0a3/looper.egg-info → looper-2.0.1}/PKG-INFO +13 -4
  2. {looper-2.0.0a3 → looper-2.0.1}/looper/_version.py +1 -1
  3. {looper-2.0.0a3 → looper-2.0.1}/looper/cli_pydantic.py +1 -1
  4. {looper-2.0.0a3 → looper-2.0.1}/looper/command_models/__init__.py +1 -1
  5. {looper-2.0.0a3 → looper-2.0.1}/looper/conductor.py +3 -3
  6. {looper-2.0.0a3 → looper-2.0.1}/looper/const.py +1 -1
  7. {looper-2.0.0a3 → looper-2.0.1}/looper/divvy.py +1 -1
  8. {looper-2.0.0a3 → looper-2.0.1}/looper/exceptions.py +1 -1
  9. {looper-2.0.0a3 → looper-2.0.1}/looper/parser_types.py +1 -1
  10. {looper-2.0.0a3 → looper-2.0.1}/looper/pipeline_interface.py +1 -1
  11. {looper-2.0.0a3 → looper-2.0.1}/looper/project.py +1 -1
  12. {looper-2.0.0a3 → looper-2.0.1}/looper/utils.py +1 -3
  13. {looper-2.0.0a3 → looper-2.0.1/looper.egg-info}/PKG-INFO +13 -4
  14. {looper-2.0.0a3 → looper-2.0.1}/looper.egg-info/requires.txt +2 -2
  15. {looper-2.0.0a3 → looper-2.0.1}/requirements/requirements-all.txt +2 -2
  16. {looper-2.0.0a3 → looper-2.0.1}/LICENSE.txt +0 -0
  17. {looper-2.0.0a3 → looper-2.0.1}/MANIFEST.in +0 -0
  18. {looper-2.0.0a3 → looper-2.0.1}/README.md +0 -0
  19. {looper-2.0.0a3 → looper-2.0.1}/logo_looper.svg +0 -0
  20. {looper-2.0.0a3 → looper-2.0.1}/looper/__init__.py +0 -0
  21. {looper-2.0.0a3 → looper-2.0.1}/looper/__main__.py +0 -0
  22. {looper-2.0.0a3 → looper-2.0.1}/looper/cli_divvy.py +0 -0
  23. {looper-2.0.0a3 → looper-2.0.1}/looper/command_models/DEVELOPER.md +0 -0
  24. {looper-2.0.0a3 → looper-2.0.1}/looper/command_models/README.md +0 -0
  25. {looper-2.0.0a3 → looper-2.0.1}/looper/command_models/arguments.py +0 -0
  26. {looper-2.0.0a3 → looper-2.0.1}/looper/command_models/commands.py +0 -0
  27. {looper-2.0.0a3 → looper-2.0.1}/looper/default_config/divvy_config.yaml +0 -0
  28. {looper-2.0.0a3 → looper-2.0.1}/looper/default_config/divvy_templates/localhost_bulker_template.sub +0 -0
  29. {looper-2.0.0a3 → looper-2.0.1}/looper/default_config/divvy_templates/localhost_docker_template.sub +0 -0
  30. {looper-2.0.0a3 → looper-2.0.1}/looper/default_config/divvy_templates/localhost_singularity_template.sub +0 -0
  31. {looper-2.0.0a3 → looper-2.0.1}/looper/default_config/divvy_templates/localhost_template.sub +0 -0
  32. {looper-2.0.0a3 → looper-2.0.1}/looper/default_config/divvy_templates/lsf_template.sub +0 -0
  33. {looper-2.0.0a3 → looper-2.0.1}/looper/default_config/divvy_templates/sge_template.sub +0 -0
  34. {looper-2.0.0a3 → looper-2.0.1}/looper/default_config/divvy_templates/slurm_singularity_template.sub +0 -0
  35. {looper-2.0.0a3 → looper-2.0.1}/looper/default_config/divvy_templates/slurm_template.sub +0 -0
  36. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/footer.html +0 -0
  37. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/footer_index.html +0 -0
  38. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/head.html +0 -0
  39. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/index.html +0 -0
  40. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/logo.html +0 -0
  41. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/navbar.html +0 -0
  42. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/navbar_links.html +0 -0
  43. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/navbar_list_parent.html +0 -0
  44. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/object.html +0 -0
  45. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/project_object.html +0 -0
  46. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/sample.html +0 -0
  47. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/status.html +0 -0
  48. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/status_table.html +0 -0
  49. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates/status_table_no_links.html +0 -0
  50. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/footer.html +0 -0
  51. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/footer_index.html +0 -0
  52. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/head.html +0 -0
  53. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/index.html +0 -0
  54. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/logo.html +0 -0
  55. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/navbar.html +0 -0
  56. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/navbar_links.html +0 -0
  57. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/navbar_list_parent.html +0 -0
  58. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/object.html +0 -0
  59. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/project_object.html +0 -0
  60. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/sample.html +0 -0
  61. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/status.html +0 -0
  62. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/status_table.html +0 -0
  63. {looper-2.0.0a3 → looper-2.0.1}/looper/jinja_templates_old/status_table_no_links.html +0 -0
  64. {looper-2.0.0a3 → looper-2.0.1}/looper/looper.py +0 -0
  65. {looper-2.0.0a3 → looper-2.0.1}/looper/plugins.py +0 -0
  66. {looper-2.0.0a3 → looper-2.0.1}/looper/processed_project.py +0 -0
  67. {looper-2.0.0a3 → looper-2.0.1}/looper/schemas/divvy_config_schema.yaml +0 -0
  68. {looper-2.0.0a3 → looper-2.0.1}/looper/schemas/pipeline_interface_schema_generic.yaml +0 -0
  69. {looper-2.0.0a3 → looper-2.0.1}/looper/schemas/pipeline_interface_schema_project.yaml +0 -0
  70. {looper-2.0.0a3 → looper-2.0.1}/looper/schemas/pipeline_interface_schema_sample.yaml +0 -0
  71. {looper-2.0.0a3 → looper-2.0.1}/looper.egg-info/SOURCES.txt +0 -0
  72. {looper-2.0.0a3 → looper-2.0.1}/looper.egg-info/dependency_links.txt +0 -0
  73. {looper-2.0.0a3 → looper-2.0.1}/looper.egg-info/entry_points.txt +0 -0
  74. {looper-2.0.0a3 → looper-2.0.1}/looper.egg-info/top_level.txt +0 -0
  75. {looper-2.0.0a3 → looper-2.0.1}/requirements/requirements-doc.txt +0 -0
  76. {looper-2.0.0a3 → looper-2.0.1}/requirements/requirements-test.txt +0 -0
  77. {looper-2.0.0a3 → looper-2.0.1}/setup.cfg +0 -0
  78. {looper-2.0.0a3 → looper-2.0.1}/setup.py +0 -0
  79. {looper-2.0.0a3 → looper-2.0.1}/tests/test_clean.py +0 -0
  80. {looper-2.0.0a3 → looper-2.0.1}/tests/test_comprehensive.py +0 -0
  81. {looper-2.0.0a3 → looper-2.0.1}/tests/test_desired_sample_range.py +0 -0
  82. {looper-2.0.0a3 → looper-2.0.1}/tests/test_natural_range.py +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: looper
3
- Version: 2.0.0a3
3
+ Version: 2.0.1
4
4
  Summary: A pipeline submission engine that parses sample inputs and submits pipelines for each sample.
5
5
  Home-page: https://github.com/pepkit/looper
6
6
  Author: Nathan Sheffield, Vince Reuter, Michal Stolarczyk, Johanna Klughammer, Andre Rendeiro
@@ -16,7 +16,7 @@ Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
16
16
  Description-Content-Type: text/markdown
17
17
  License-File: LICENSE.txt
18
18
  Requires-Dist: colorama>=0.3.9
19
- Requires-Dist: eido>=0.2.3
19
+ Requires-Dist: eido>=0.2.4
20
20
  Requires-Dist: jinja2
21
21
  Requires-Dist: logmuse>=0.2.0
22
22
  Requires-Dist: pandas>=2.0.2
@@ -25,10 +25,19 @@ Requires-Dist: pipestat>=0.12.0a1
25
25
  Requires-Dist: peppy>=0.40.6
26
26
  Requires-Dist: pyyaml>=3.12
27
27
  Requires-Dist: rich>=9.10.0
28
- Requires-Dist: ubiquerg>=0.8.1a1
28
+ Requires-Dist: ubiquerg>=0.8.1
29
29
  Requires-Dist: yacman==0.9.3
30
30
  Requires-Dist: pydantic-argparse>=0.9.0
31
31
  Requires-Dist: psutil
32
+ Dynamic: author
33
+ Dynamic: classifier
34
+ Dynamic: description
35
+ Dynamic: description-content-type
36
+ Dynamic: home-page
37
+ Dynamic: keywords
38
+ Dynamic: license
39
+ Dynamic: requires-dist
40
+ Dynamic: summary
32
41
 
33
42
  # <img src="docs/img/looper_logo.svg" alt="looper logo" height="70">
34
43
 
@@ -1,2 +1,2 @@
1
- __version__ = "2.0.0a3"
1
+ __version__ = "2.0.1"
2
2
  # You must change the version in parser = pydantic_argparse.ArgumentParser in cli_pydantic.py!!!
@@ -340,7 +340,7 @@ def main(test_args=None) -> dict:
340
340
  prog="looper",
341
341
  description="Looper: A job submitter for Portable Encapsulated Projects",
342
342
  add_help=True,
343
- version="2.0.0a3",
343
+ version="2.0.1",
344
344
  )
345
345
 
346
346
  parser = add_short_arguments(parser, ArgumentEnum)
@@ -1,6 +1,6 @@
1
1
  """
2
2
  This package holds `pydantic` models that describe commands and their arguments.
3
3
 
4
- These can be used either by an HTTP API or with the `pydantic-argparse`
4
+ These can be used either by an HTTP API or with the `pydantic-argparse`
5
5
  library to build a CLI.
6
6
  """
@@ -1,4 +1,4 @@
1
- """ Pipeline job submission orchestration """
1
+ """Pipeline job submission orchestration"""
2
2
 
3
3
  import importlib
4
4
  import logging
@@ -18,7 +18,7 @@ from eido import read_schema, get_input_files_size
18
18
  from eido.const import INPUT_FILE_SIZE_KEY, MISSING_KEY
19
19
  from jinja2.exceptions import UndefinedError
20
20
 
21
- from peppy.const import CONFIG_KEY, SAMPLE_NAME_ATTR, SAMPLE_YAML_EXT
21
+ from peppy.const import CONFIG_KEY, SAMPLE_YAML_EXT
22
22
  from peppy.exceptions import RemoteYAMLError
23
23
  from pipestat import PipestatError
24
24
  from ubiquerg import expandpath
@@ -77,7 +77,7 @@ def _get_yaml_path(namespaces, template_key, default_name_appendix="", filename=
77
77
  # default YAML location
78
78
  f = (
79
79
  filename
80
- or f"{namespaces['sample'][SAMPLE_NAME_ATTR]}"
80
+ or f"{namespaces['sample'][namespaces['sample']['_project'].sample_table_index]}"
81
81
  f"{default_name_appendix}"
82
82
  f"{SAMPLE_YAML_EXT[0]}"
83
83
  )
@@ -1,4 +1,4 @@
1
- """ Shared project constants """
1
+ """Shared project constants"""
2
2
 
3
3
  import os
4
4
  from enum import Enum
@@ -1,4 +1,4 @@
1
- """ Computing configuration representation """
1
+ """Computing configuration representation"""
2
2
 
3
3
  import logging
4
4
  import os
@@ -1,4 +1,4 @@
1
- """ Exceptions for specific looper issues. """
1
+ """Exceptions for specific looper issues."""
2
2
 
3
3
  from abc import ABCMeta
4
4
  from collections.abc import Iterable
@@ -1,4 +1,4 @@
1
- """ Definitions of the parser argument types """
1
+ """Definitions of the parser argument types"""
2
2
 
3
3
  from yacman import YAMLConfigManager
4
4
 
@@ -1,4 +1,4 @@
1
- """ Model the connection between a pipeline and a project or executor. """
1
+ """Model the connection between a pipeline and a project or executor."""
2
2
 
3
3
  import os
4
4
  from collections.abc import Mapping
@@ -1,4 +1,4 @@
1
- """ Looper version of NGS project model. """
1
+ """Looper version of NGS project model."""
2
2
 
3
3
  import itertools
4
4
  import os
@@ -1,4 +1,4 @@
1
- """ Helpers without an obvious logical home. """
1
+ """Helpers without an obvious logical home."""
2
2
 
3
3
  import argparse
4
4
  from collections import defaultdict
@@ -1112,7 +1112,6 @@ def inspect_looper_config_file(looper_config_dict) -> None:
1112
1112
 
1113
1113
 
1114
1114
  def expand_nested_var_templates(var_templates_dict, namespaces):
1115
-
1116
1115
  "Takes all var_templates as a dict and recursively expands any paths."
1117
1116
 
1118
1117
  result = {}
@@ -1127,7 +1126,6 @@ def expand_nested_var_templates(var_templates_dict, namespaces):
1127
1126
 
1128
1127
 
1129
1128
  def render_nested_var_templates(var_templates_dict, namespaces):
1130
-
1131
1129
  "Takes all var_templates as a dict and recursively renders the jinja templates."
1132
1130
 
1133
1131
  result = {}
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: looper
3
- Version: 2.0.0a3
3
+ Version: 2.0.1
4
4
  Summary: A pipeline submission engine that parses sample inputs and submits pipelines for each sample.
5
5
  Home-page: https://github.com/pepkit/looper
6
6
  Author: Nathan Sheffield, Vince Reuter, Michal Stolarczyk, Johanna Klughammer, Andre Rendeiro
@@ -16,7 +16,7 @@ Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
16
16
  Description-Content-Type: text/markdown
17
17
  License-File: LICENSE.txt
18
18
  Requires-Dist: colorama>=0.3.9
19
- Requires-Dist: eido>=0.2.3
19
+ Requires-Dist: eido>=0.2.4
20
20
  Requires-Dist: jinja2
21
21
  Requires-Dist: logmuse>=0.2.0
22
22
  Requires-Dist: pandas>=2.0.2
@@ -25,10 +25,19 @@ Requires-Dist: pipestat>=0.12.0a1
25
25
  Requires-Dist: peppy>=0.40.6
26
26
  Requires-Dist: pyyaml>=3.12
27
27
  Requires-Dist: rich>=9.10.0
28
- Requires-Dist: ubiquerg>=0.8.1a1
28
+ Requires-Dist: ubiquerg>=0.8.1
29
29
  Requires-Dist: yacman==0.9.3
30
30
  Requires-Dist: pydantic-argparse>=0.9.0
31
31
  Requires-Dist: psutil
32
+ Dynamic: author
33
+ Dynamic: classifier
34
+ Dynamic: description
35
+ Dynamic: description-content-type
36
+ Dynamic: home-page
37
+ Dynamic: keywords
38
+ Dynamic: license
39
+ Dynamic: requires-dist
40
+ Dynamic: summary
32
41
 
33
42
  # <img src="docs/img/looper_logo.svg" alt="looper logo" height="70">
34
43
 
@@ -1,5 +1,5 @@
1
1
  colorama>=0.3.9
2
- eido>=0.2.3
2
+ eido>=0.2.4
3
3
  jinja2
4
4
  logmuse>=0.2.0
5
5
  pandas>=2.0.2
@@ -8,7 +8,7 @@ pipestat>=0.12.0a1
8
8
  peppy>=0.40.6
9
9
  pyyaml>=3.12
10
10
  rich>=9.10.0
11
- ubiquerg>=0.8.1a1
11
+ ubiquerg>=0.8.1
12
12
  yacman==0.9.3
13
13
  pydantic-argparse>=0.9.0
14
14
  psutil
@@ -1,5 +1,5 @@
1
1
  colorama>=0.3.9
2
- eido>=0.2.3
2
+ eido>=0.2.4
3
3
  jinja2
4
4
  logmuse>=0.2.0
5
5
  pandas>=2.0.2
@@ -8,7 +8,7 @@ pipestat>=0.12.0a1
8
8
  peppy>=0.40.6
9
9
  pyyaml>=3.12
10
10
  rich>=9.10.0
11
- ubiquerg>=0.8.1a1
11
+ ubiquerg>=0.8.1
12
12
  yacman==0.9.3
13
13
  pydantic-argparse>=0.9.0
14
14
  psutil
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes