cpg-utils 5.8.0__tar.gz → 5.8.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 (32) hide show
  1. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/PKG-INFO +5 -19
  2. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/README.md +1 -7
  3. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/cromwell.py +1 -0
  4. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/dataproc.py +2 -1
  5. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/dataproc_runner.py +3 -0
  6. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils.egg-info/PKG-INFO +5 -19
  7. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils.egg-info/SOURCES.txt +0 -2
  8. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils.egg-info/top_level.txt +0 -1
  9. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/pyproject.toml +82 -1
  10. cpg_utils-5.8.0/setup.py +0 -52
  11. cpg_utils-5.8.0/test/__init__.py +0 -0
  12. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/LICENSE +0 -0
  13. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/__init__.py +0 -0
  14. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/cloud.py +0 -0
  15. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/cloudpath_hail_az.py +0 -0
  16. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/config.py +0 -0
  17. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/constants.py +0 -0
  18. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/cromwell_model.py +0 -0
  19. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/existence_checks.py +0 -0
  20. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/git.py +0 -0
  21. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/hail_batch.py +0 -0
  22. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/membership.py +0 -0
  23. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/metamist_registration.py +0 -0
  24. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/py.typed +0 -0
  25. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils/slack.py +0 -0
  26. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils.egg-info/dependency_links.txt +0 -0
  27. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/cpg_utils.egg-info/requires.txt +0 -0
  28. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/setup.cfg +0 -0
  29. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/test/test_config.py +0 -0
  30. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/test/test_cromwell.py +0 -0
  31. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/test/test_dataproc_runner.py +0 -0
  32. {cpg_utils-5.8.0 → cpg_utils-5.8.2}/test/test_get_google_identity_token.py +0 -0
@@ -1,13 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cpg-utils
3
- Version: 5.8.0
3
+ Version: 5.8.2
4
4
  Summary: Library of convenience functions specific to the CPG
5
- Home-page: https://github.com/populationgenomics/cpg-utils
6
- License: MIT
5
+ License-Expression: MIT
6
+ Project-URL: Homepage, https://github.com/populationgenomics/cpg-utils
7
7
  Keywords: bioinformatics
8
8
  Classifier: Environment :: Console
9
9
  Classifier: Intended Audience :: Science/Research
10
- Classifier: License :: OSI Approved :: MIT License
11
10
  Classifier: Natural Language :: English
12
11
  Classifier: Operating System :: MacOS :: MacOS X
13
12
  Classifier: Operating System :: POSIX
@@ -15,6 +14,7 @@ Classifier: Operating System :: Unix
15
14
  Classifier: Programming Language :: Python
16
15
  Classifier: Topic :: Scientific/Engineering
17
16
  Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
17
+ Requires-Python: >=3.11
18
18
  Description-Content-Type: text/markdown
19
19
  License-File: LICENSE
20
20
  Requires-Dist: boto3>=1.28.56
@@ -33,26 +33,12 @@ Requires-Dist: requests
33
33
  Requires-Dist: tabulate
34
34
  Requires-Dist: toml
35
35
  Requires-Dist: deprecated
36
- Dynamic: classifier
37
- Dynamic: description
38
- Dynamic: description-content-type
39
- Dynamic: home-page
40
- Dynamic: keywords
41
- Dynamic: license
42
36
  Dynamic: license-file
43
- Dynamic: requires-dist
44
- Dynamic: summary
45
37
 
46
38
  # cpg-utils
47
39
 
48
40
  This is a Python library containing convenience functions that are specific to the CPG.
49
41
 
50
- In order to install the library in a conda environment, run:
51
-
52
- ```bash
53
- conda install -c cpg cpg-utils
54
- ```
55
-
56
42
  To use the library, import functions like this:
57
43
 
58
44
  ```python
@@ -61,7 +47,7 @@ from cpg_utils.cloud import email_from_id_token
61
47
  _email_string = email_from_id_token(id_token_jwt='TOKEN_STRING')
62
48
  ```
63
49
 
64
- We use `bumpversion` for incrementing the library's semantic version. A new conda package gets published automatically in the `cpg` conda channel whenever a version bump commit is merged with the `main` branch.
50
+ We use `bump-my-version` for incrementing the library's semantic version. A new PyPi package gets published whenever a version bump commit is merged with the `main` branch.
65
51
 
66
52
 
67
53
  ## Contents
@@ -2,12 +2,6 @@
2
2
 
3
3
  This is a Python library containing convenience functions that are specific to the CPG.
4
4
 
5
- In order to install the library in a conda environment, run:
6
-
7
- ```bash
8
- conda install -c cpg cpg-utils
9
- ```
10
-
11
5
  To use the library, import functions like this:
12
6
 
13
7
  ```python
@@ -16,7 +10,7 @@ from cpg_utils.cloud import email_from_id_token
16
10
  _email_string = email_from_id_token(id_token_jwt='TOKEN_STRING')
17
11
  ```
18
12
 
19
- We use `bumpversion` for incrementing the library's semantic version. A new conda package gets published automatically in the `cpg` conda channel whenever a version bump commit is merged with the `main` branch.
13
+ We use `bump-my-version` for incrementing the library's semantic version. A new PyPi package gets published whenever a version bump commit is merged with the `main` branch.
20
14
 
21
15
 
22
16
  ## Contents
@@ -792,6 +792,7 @@ def _copy_resource_group_into_batch(
792
792
  jq_els,
793
793
  error_descriptions,
794
794
  rg.keys(),
795
+ strict=True,
795
796
  ):
796
797
  j.command(
797
798
  f"""
@@ -3,8 +3,9 @@
3
3
  import os
4
4
  import re
5
5
  import uuid
6
+ from collections.abc import Collection
6
7
  from shlex import quote
7
- from typing import Any, Collection
8
+ from typing import Any
8
9
 
9
10
  import hailtop.batch as hb
10
11
 
@@ -341,6 +341,7 @@ class HailDataprocCluster:
341
341
  job_client: dataproc_v1.JobControllerClient | None = None,
342
342
  storage_client: storage.Client | None = None,
343
343
  preemptible_workers: bool = True,
344
+ internal_ip_only: bool = True,
344
345
  ) -> None:
345
346
  self._project = project
346
347
  self._region = region
@@ -391,6 +392,7 @@ class HailDataprocCluster:
391
392
  self._cluster: dataproc_v1.Cluster | None = None
392
393
  self._job_ids: list[str] = []
393
394
  self._preemptible_workers = preemptible_workers
395
+ self._internal_ip_only = internal_ip_only
394
396
 
395
397
  @property
396
398
  def name(self) -> str:
@@ -490,6 +492,7 @@ class HailDataprocCluster:
490
492
  'config': {
491
493
  'gce_cluster_config': {
492
494
  'zone_uri': '', # Let Dataproc auto-zone within region.
495
+ 'internal_ip_only': self._internal_ip_only,
493
496
  'metadata': {
494
497
  'WHEEL': self.wheel,
495
498
  },
@@ -1,13 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cpg-utils
3
- Version: 5.8.0
3
+ Version: 5.8.2
4
4
  Summary: Library of convenience functions specific to the CPG
5
- Home-page: https://github.com/populationgenomics/cpg-utils
6
- License: MIT
5
+ License-Expression: MIT
6
+ Project-URL: Homepage, https://github.com/populationgenomics/cpg-utils
7
7
  Keywords: bioinformatics
8
8
  Classifier: Environment :: Console
9
9
  Classifier: Intended Audience :: Science/Research
10
- Classifier: License :: OSI Approved :: MIT License
11
10
  Classifier: Natural Language :: English
12
11
  Classifier: Operating System :: MacOS :: MacOS X
13
12
  Classifier: Operating System :: POSIX
@@ -15,6 +14,7 @@ Classifier: Operating System :: Unix
15
14
  Classifier: Programming Language :: Python
16
15
  Classifier: Topic :: Scientific/Engineering
17
16
  Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
17
+ Requires-Python: >=3.11
18
18
  Description-Content-Type: text/markdown
19
19
  License-File: LICENSE
20
20
  Requires-Dist: boto3>=1.28.56
@@ -33,26 +33,12 @@ Requires-Dist: requests
33
33
  Requires-Dist: tabulate
34
34
  Requires-Dist: toml
35
35
  Requires-Dist: deprecated
36
- Dynamic: classifier
37
- Dynamic: description
38
- Dynamic: description-content-type
39
- Dynamic: home-page
40
- Dynamic: keywords
41
- Dynamic: license
42
36
  Dynamic: license-file
43
- Dynamic: requires-dist
44
- Dynamic: summary
45
37
 
46
38
  # cpg-utils
47
39
 
48
40
  This is a Python library containing convenience functions that are specific to the CPG.
49
41
 
50
- In order to install the library in a conda environment, run:
51
-
52
- ```bash
53
- conda install -c cpg cpg-utils
54
- ```
55
-
56
42
  To use the library, import functions like this:
57
43
 
58
44
  ```python
@@ -61,7 +47,7 @@ from cpg_utils.cloud import email_from_id_token
61
47
  _email_string = email_from_id_token(id_token_jwt='TOKEN_STRING')
62
48
  ```
63
49
 
64
- We use `bumpversion` for incrementing the library's semantic version. A new conda package gets published automatically in the `cpg` conda channel whenever a version bump commit is merged with the `main` branch.
50
+ We use `bump-my-version` for incrementing the library's semantic version. A new PyPi package gets published whenever a version bump commit is merged with the `main` branch.
65
51
 
66
52
 
67
53
  ## Contents
@@ -1,7 +1,6 @@
1
1
  LICENSE
2
2
  README.md
3
3
  pyproject.toml
4
- setup.py
5
4
  cpg_utils/__init__.py
6
5
  cpg_utils/cloud.py
7
6
  cpg_utils/cloudpath_hail_az.py
@@ -23,7 +22,6 @@ cpg_utils.egg-info/SOURCES.txt
23
22
  cpg_utils.egg-info/dependency_links.txt
24
23
  cpg_utils.egg-info/requires.txt
25
24
  cpg_utils.egg-info/top_level.txt
26
- test/__init__.py
27
25
  test/test_config.py
28
26
  test/test_cromwell.py
29
27
  test/test_dataproc_runner.py
@@ -1,3 +1,67 @@
1
+ [project]
2
+ name = "cpg-utils"
3
+ # This tag is automatically updated by bumpversion
4
+ version = "5.8.2"
5
+ requires-python = '>=3.11'
6
+ description = "Library of convenience functions specific to the CPG"
7
+ readme = "README.md"
8
+ license = "MIT"
9
+ license-files = ["LICENSE"]
10
+ keywords = ["bioinformatics"]
11
+ classifiers = [
12
+ "Environment :: Console",
13
+ "Intended Audience :: Science/Research",
14
+ "Natural Language :: English",
15
+ "Operating System :: MacOS :: MacOS X",
16
+ "Operating System :: POSIX",
17
+ "Operating System :: Unix",
18
+ "Programming Language :: Python",
19
+ "Topic :: Scientific/Engineering",
20
+ "Topic :: Scientific/Engineering :: Bio-Informatics",
21
+ ]
22
+ dependencies = [
23
+ "boto3>=1.28.56",
24
+ "botocore>=1.31.56",
25
+ "cloudpathlib[all]",
26
+ "frozendict",
27
+ "google-auth>=1.27.0",
28
+ "google-auth-oauthlib",
29
+ "google-cloud-artifact-registry",
30
+ "google-cloud-dataproc",
31
+ "google-cloud-secret-manager",
32
+ "google-cloud-storage",
33
+ "metamist",
34
+ "python-slugify",
35
+ "requests",
36
+ "tabulate",
37
+ "toml",
38
+ "deprecated",
39
+ ]
40
+
41
+ [dependency-groups]
42
+ dev = [
43
+ "bump-my-version",
44
+ "coverage",
45
+ "hail",
46
+ "pip-audit>=2.7.3",
47
+ "pre-commit",
48
+ "pytest",
49
+ "setuptools>=77",
50
+ ]
51
+
52
+ [project.urls]
53
+ Homepage = "https://github.com/populationgenomics/cpg-utils"
54
+
55
+ [build-system]
56
+ requires = ["setuptools>=77"]
57
+ build-backend = "setuptools.build_meta"
58
+
59
+ [tool.setuptools.packages.find]
60
+ include = ["cpg_utils*"]
61
+
62
+ [tool.setuptools.package-data]
63
+ cpg_utils = ["py.typed"]
64
+
1
65
  [tool.black]
2
66
  line-length = 88
3
67
  skip-string-normalization = true
@@ -33,7 +97,6 @@ ignore = [
33
97
  ]
34
98
 
35
99
  [tool.ruff.lint.isort]
36
-
37
100
  section-order = ["future", "standard-library", "third-party", "hail", "cpg", "first-party", "local-folder"]
38
101
 
39
102
  [tool.ruff.lint.isort.sections]
@@ -56,3 +119,21 @@ cpg = [
56
119
  [tool.pytest.ini_options]
57
120
  addopts = "--doctest-modules"
58
121
  testpaths = ["test", "cpg_utils"]
122
+
123
+ [tool.bumpversion]
124
+ current_version = "5.8.2"
125
+ parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)"
126
+ serialize = ["{major}.{minor}.{patch}"]
127
+ commit = true
128
+ message = "Bump version: {current_version} → {new_version}"
129
+ commit_args = ""
130
+
131
+ [[tool.bumpversion.files]]
132
+ filename = "pyproject.toml"
133
+ search = 'version = "{current_version}"'
134
+ replace = 'version = "{new_version}"'
135
+
136
+ [[tool.bumpversion.files]]
137
+ filename = ".github/workflows/docker.yaml"
138
+ search = 'VERSION: {current_version}'
139
+ replace = 'VERSION: {new_version}'
cpg_utils-5.8.0/setup.py DELETED
@@ -1,52 +0,0 @@
1
- #!/usr/bin/env python
2
-
3
- from setuptools import find_packages, setup
4
-
5
- with open('README.md') as f:
6
- long_description = f.read()
7
-
8
- setup(
9
- name='cpg-utils',
10
- # This tag is automatically updated by bumpversion
11
- version='5.8.0',
12
- description='Library of convenience functions specific to the CPG',
13
- long_description=long_description,
14
- long_description_content_type='text/markdown',
15
- url='https://github.com/populationgenomics/cpg-utils',
16
- license='MIT',
17
- packages=find_packages(),
18
- package_data={
19
- 'cpg_utils': ['py.typed'],
20
- },
21
- install_requires=[
22
- 'boto3>=1.28.56',
23
- 'botocore>=1.31.56',
24
- 'cloudpathlib[all]',
25
- 'frozendict',
26
- 'google-auth>=1.27.0',
27
- 'google-auth-oauthlib',
28
- 'google-cloud-artifact-registry',
29
- 'google-cloud-dataproc',
30
- 'google-cloud-secret-manager',
31
- 'google-cloud-storage',
32
- 'metamist',
33
- 'python-slugify',
34
- 'requests',
35
- 'tabulate',
36
- 'toml',
37
- 'deprecated',
38
- ],
39
- keywords='bioinformatics',
40
- classifiers=[
41
- 'Environment :: Console',
42
- 'Intended Audience :: Science/Research',
43
- 'License :: OSI Approved :: MIT License',
44
- 'Natural Language :: English',
45
- 'Operating System :: MacOS :: MacOS X',
46
- 'Operating System :: POSIX',
47
- 'Operating System :: Unix',
48
- 'Programming Language :: Python',
49
- 'Topic :: Scientific/Engineering',
50
- 'Topic :: Scientific/Engineering :: Bio-Informatics',
51
- ],
52
- )
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