cpg-utils 5.4.0__tar.gz → 5.4.2__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 (28) hide show
  1. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/PKG-INFO +1 -1
  2. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/cloud.py +1 -1
  3. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/hail_batch.py +11 -3
  4. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils.egg-info/PKG-INFO +1 -1
  5. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/setup.py +1 -1
  6. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/LICENSE +0 -0
  7. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/README.md +0 -0
  8. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/__init__.py +0 -0
  9. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/cloudpath_hail_az.py +0 -0
  10. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/config.py +0 -0
  11. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/constants.py +0 -0
  12. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/cromwell.py +0 -0
  13. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/cromwell_model.py +0 -0
  14. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/dataproc.py +0 -0
  15. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/git.py +0 -0
  16. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/membership.py +0 -0
  17. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/py.typed +0 -0
  18. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils/slack.py +0 -0
  19. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils.egg-info/SOURCES.txt +0 -0
  20. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils.egg-info/dependency_links.txt +0 -0
  21. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils.egg-info/requires.txt +0 -0
  22. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/cpg_utils.egg-info/top_level.txt +0 -0
  23. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/pyproject.toml +0 -0
  24. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/setup.cfg +0 -0
  25. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/test/__init__.py +0 -0
  26. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/test/test_config.py +0 -0
  27. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/test/test_cromwell.py +0 -0
  28. {cpg_utils-5.4.0 → cpg_utils-5.4.2}/test/test_doctests.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cpg-utils
3
- Version: 5.4.0
3
+ Version: 5.4.2
4
4
  Summary: Library of convenience functions specific to the CPG
5
5
  Home-page: https://github.com/populationgenomics/cpg-utils
6
6
  License: MIT
@@ -155,7 +155,7 @@ def _ensure_image_tags_loaded(project: str, location: str, repository: str) -> N
155
155
  image_tags[name][tag] = DockerImage(
156
156
  image.name,
157
157
  image.uri,
158
- f'{base_uri}@{tag}',
158
+ f'{base_uri}:{tag}',
159
159
  image.image_size_bytes,
160
160
  image.build_time,
161
161
  )
@@ -189,12 +189,16 @@ class Batch(hb.Batch):
189
189
 
190
190
  self.total_job_num += 1
191
191
 
192
+ # Multiple jobs in the batch might reference the same attributes dict
193
+ # object. Avoid modifying the dict object (e.g. with pop() or update())
194
+ # to avoid changing the attributes of subsequently processed jobs.
195
+
192
196
  attributes = attributes or {}
193
197
  stage = attributes.get('stage')
194
198
  dataset = attributes.get('dataset')
195
199
  sequencing_group = attributes.get('sequencing_group')
196
200
  participant_id = attributes.get('participant_id')
197
- sequencing_groups: set[str] = set(attributes.pop('sequencing_groups', []) or [])
201
+ sequencing_groups: set[str] = set(attributes.get('sequencing_groups') or [])
198
202
  if sequencing_group:
199
203
  sequencing_groups.add(sequencing_group)
200
204
  part = attributes.get('part')
@@ -234,10 +238,14 @@ class Batch(hb.Batch):
234
238
  self.job_by_tool[tool]['job_n'] += 1
235
239
  self.job_by_tool[tool]['sequencing_groups'] |= sequencing_groups
236
240
 
241
+ # Ensure all the returned attribute values are presented as strings
242
+ fixed_attrs = {
243
+ k: str(v) for k, v in attributes.items() if k != 'sequencing_groups'
244
+ }
245
+
237
246
  seqgroups_str = str(sorted(sequencing_groups))
238
- attributes.update(self._pack_attribute('sequencing_groups', seqgroups_str))
247
+ fixed_attrs.update(self._pack_attribute('sequencing_groups', seqgroups_str))
239
248
 
240
- fixed_attrs = {k: str(v) for k, v in attributes.items()}
241
249
  return name, fixed_attrs
242
250
 
243
251
  def run(self, **kwargs: Any):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cpg-utils
3
- Version: 5.4.0
3
+ Version: 5.4.2
4
4
  Summary: Library of convenience functions specific to the CPG
5
5
  Home-page: https://github.com/populationgenomics/cpg-utils
6
6
  License: MIT
@@ -8,7 +8,7 @@ with open('README.md') as f:
8
8
  setup(
9
9
  name='cpg-utils',
10
10
  # This tag is automatically updated by bumpversion
11
- version='5.4.0',
11
+ version='5.4.2',
12
12
  description='Library of convenience functions specific to the CPG',
13
13
  long_description=long_description,
14
14
  long_description_content_type='text/markdown',
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