lsst-ctrl-mpexec 29.2025.3700__py3-none-any.whl → 29.2025.3800__py3-none-any.whl

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.
@@ -318,7 +318,8 @@ show_option = MWOptionDecorator(
318
318
  given its label or all tasks; ``pipeline`` to show pipeline
319
319
  composition; ``graph`` to show information about quanta;
320
320
  ``workflow`` to show information about quanta and their
321
- dependency; ``tasks`` to show task composition; ``uri`` to show
321
+ dependency; ``tasks`` to show task composition; ``subsets`` to
322
+ show subset labels and associated tasks; ``uri`` to show
322
323
  predicted dataset URIs of quanta; ``pipeline-graph`` for a
323
324
  text-based visualization of the pipeline (tasks and dataset types);
324
325
  ``task-graph`` for a text-based visualization of just the tasks.
@@ -111,6 +111,7 @@ class ShowInfo:
111
111
  "dump-config",
112
112
  "pipeline-graph",
113
113
  "task-graph",
114
+ "subsets",
114
115
  }
115
116
  graph_commands = {"graph", "workflow", "uri"}
116
117
 
@@ -131,7 +132,9 @@ class ShowInfo:
131
132
  known = self.pipeline_commands | self.graph_commands
132
133
  unknown = set(commands) - known
133
134
  if unknown:
134
- raise ValueError(f"Unknown value(s) for show: {unknown} (choose from '{', '.join(known)}')")
135
+ raise ValueError(
136
+ f"Unknown value(s) for show: {unknown} (choose from '{', '.join(sorted(known))}')"
137
+ )
135
138
 
136
139
  @property
137
140
  def unhandled(self) -> frozenset[str]:
@@ -151,7 +154,6 @@ class ShowInfo:
151
154
  if command not in self.commands:
152
155
  continue
153
156
  args = self.commands[command]
154
-
155
157
  match command:
156
158
  case "pipeline":
157
159
  print(pipeline_graph_factory.pipeline, file=self.stream)
@@ -166,6 +168,14 @@ class ShowInfo:
166
168
  self._showConfigHistory(pipeline_graph_factory(visualization_only=True), arg)
167
169
  case "tasks":
168
170
  self._showTaskHierarchy(pipeline_graph_factory(visualization_only=True))
171
+ case "subsets":
172
+ print(
173
+ "\n".join(
174
+ f"{subset}:\n" + "\n".join(f" - {s}" for s in sorted(tasks))
175
+ for subset, tasks in dict(pipeline_graph_factory.pipeline.subsets).items()
176
+ ),
177
+ file=self.stream,
178
+ )
169
179
  case "pipeline-graph":
170
180
  visualization.show(
171
181
  pipeline_graph_factory(visualization_only=True), self.stream, dataset_types=True
@@ -1,2 +1,2 @@
1
1
  __all__ = ["__version__"]
2
- __version__ = "29.2025.3700"
2
+ __version__ = "29.2025.3800"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lsst-ctrl-mpexec
3
- Version: 29.2025.3700
3
+ Version: 29.2025.3800
4
4
  Summary: Pipeline execution infrastructure for the Rubin Observatory LSST Science Pipelines.
5
5
  Author-email: Rubin Observatory Data Management <dm-admin@lists.lsst.org>
6
6
  License: BSD 3-Clause License
@@ -11,12 +11,12 @@ lsst/ctrl/mpexec/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
11
  lsst/ctrl/mpexec/quantumGraphExecutor.py,sha256=7LCoqsmNSWUJ1ph1bfgrVrpk5Ug5ArzniFkqcxgjfhI,2106
12
12
  lsst/ctrl/mpexec/reports.py,sha256=EvHjW9wdjfN1lj4DQH634oJ9zv3wYKySvJ_UtFDtNHY,2460
13
13
  lsst/ctrl/mpexec/separablePipelineExecutor.py,sha256=yHymF9jSthVCl_230TzRqQrcAmohSgR7Me8YAbMazM8,1818
14
- lsst/ctrl/mpexec/showInfo.py,sha256=F0JXAaOxOzre88xHrc810bzXOcv6dkYQY9HZyzMp6qo,16433
14
+ lsst/ctrl/mpexec/showInfo.py,sha256=nOnZe4SLJPpIYEoND-6uaYOI0YBKQRX92yYIN1l1zUo,16867
15
15
  lsst/ctrl/mpexec/simple_pipeline_executor.py,sha256=aVWgOds0ILCTzXdrWy0KFyjcIuqw6cNq8alAJeZd8AE,1797
16
16
  lsst/ctrl/mpexec/singleQuantumExecutor.py,sha256=Y6ufL6y5PuQ6-x8sFu_m2moCIA3JvOf6Gb9PotXeTno,8649
17
17
  lsst/ctrl/mpexec/taskFactory.py,sha256=0TdCM-le7CXhobVbWPTqcq9sOrGceUY6mmkzzWhi0dM,1707
18
18
  lsst/ctrl/mpexec/util.py,sha256=y2Rw5PL40_EuLtVxiqSVX0JfPV4IrFl1LfOMUWx2u30,4236
19
- lsst/ctrl/mpexec/version.py,sha256=AQOxvPBwPILItheZOADktYgvye1bfruQzhiAhgZby0A,55
19
+ lsst/ctrl/mpexec/version.py,sha256=1tuAAU5Re7MRhtcbYlCODj58a79T6z8ie3-QgPCtLgE,55
20
20
  lsst/ctrl/mpexec/cli/__init__.py,sha256=6dpDHNBzyicVpFi1fsaiYVbYEMeoL57IHKkPaej24gs,1301
21
21
  lsst/ctrl/mpexec/cli/butler_factory.py,sha256=-Nlm5nVcWK_JbW8oc5qudu9yuZg5Pknf1LmtkxTkHJs,26713
22
22
  lsst/ctrl/mpexec/cli/pipetask.py,sha256=4HnhX9dCizCihVbpHVJX5WXO9TEli9oL6wA-tPh1_vA,2209
@@ -26,7 +26,7 @@ lsst/ctrl/mpexec/cli/cmd/commands.py,sha256=5vmik8pzd61rAAZs0FjbQxzmZEHkRC0_M21y
26
26
  lsst/ctrl/mpexec/cli/opt/__init__.py,sha256=IzUInuJj9igiaNcEqMx0adelgJtQC5_XMYnaiizBn0A,1378
27
27
  lsst/ctrl/mpexec/cli/opt/arguments.py,sha256=vjUw0ZN_4HStp-_3ne6AT5S_eH7sly3OVfL07tgrJnY,1572
28
28
  lsst/ctrl/mpexec/cli/opt/optionGroups.py,sha256=v_fbB-frVUdXr82VY_mC8KHdUJSJNaU64qBJO4cA3To,7445
29
- lsst/ctrl/mpexec/cli/opt/options.py,sha256=hZyPKOYC4NXwEGGx3suGixNMZiehTaoA-2LRh_o14wg,19411
29
+ lsst/ctrl/mpexec/cli/opt/options.py,sha256=j5abmIcs5huxeYQoVyqle9OL0chm3H34MFOMj-hzFlI,19475
30
30
  lsst/ctrl/mpexec/cli/script/__init__.py,sha256=eCuF4FAI5D3pl05IMJj7TCkZq-hireua2mA5Ui-mKSI,1624
31
31
  lsst/ctrl/mpexec/cli/script/build.py,sha256=3_ohOGuope_hCrvBAo1X31nejgTZ73PZv_ew3ykhYIc,6919
32
32
  lsst/ctrl/mpexec/cli/script/cleanup.py,sha256=D7W-azf4mNJcIWhbU5uCRCi94mkb8-Q2ksRFblQGrUw,4990
@@ -38,13 +38,13 @@ lsst/ctrl/mpexec/cli/script/report.py,sha256=ItJitmYmWIDjj7PxRtP4qXLx-z5FAU6nSfI
38
38
  lsst/ctrl/mpexec/cli/script/run.py,sha256=AxGv8NkyYYJCsFw3vqC6HkKRU7wTLuSetllKRCmFT-4,14180
39
39
  lsst/ctrl/mpexec/cli/script/run_qbb.py,sha256=iWlxg-CMp2nkk5B0ZGovMd0Eg9Q-F1zbcQqfhUUYDYI,10739
40
40
  lsst/ctrl/mpexec/cli/script/update_graph_run.py,sha256=v_EdOaD6jR_vSlgm_5-pwUjoNEFMrAuYFM1xIaHVU3Q,2597
41
- lsst_ctrl_mpexec-29.2025.3700.dist-info/licenses/COPYRIGHT,sha256=pGCjnRAnyt02a6_9PLzXQikpvYmvMmK9fCdOKlRSV6k,369
42
- lsst_ctrl_mpexec-29.2025.3700.dist-info/licenses/LICENSE,sha256=pRExkS03v0MQW-neNfIcaSL6aiAnoLxYgtZoFzQ6zkM,232
43
- lsst_ctrl_mpexec-29.2025.3700.dist-info/licenses/bsd_license.txt,sha256=7MIcv8QRX9guUtqPSBDMPz2SnZ5swI-xZMqm_VDSfxY,1606
44
- lsst_ctrl_mpexec-29.2025.3700.dist-info/licenses/gpl-v3.0.txt,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
45
- lsst_ctrl_mpexec-29.2025.3700.dist-info/METADATA,sha256=TBEj-T31Sj0TkU38RSh9Eb-4Sia0C7ixm8SB9SMSJ7c,2302
46
- lsst_ctrl_mpexec-29.2025.3700.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
47
- lsst_ctrl_mpexec-29.2025.3700.dist-info/entry_points.txt,sha256=aYE38yqZU8qvpLUUkXzgmUxDJYYknEqPxgxYkowrL4s,64
48
- lsst_ctrl_mpexec-29.2025.3700.dist-info/top_level.txt,sha256=eUWiOuVVm9wwTrnAgiJT6tp6HQHXxIhj2QSZ7NYZH80,5
49
- lsst_ctrl_mpexec-29.2025.3700.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
50
- lsst_ctrl_mpexec-29.2025.3700.dist-info/RECORD,,
41
+ lsst_ctrl_mpexec-29.2025.3800.dist-info/licenses/COPYRIGHT,sha256=pGCjnRAnyt02a6_9PLzXQikpvYmvMmK9fCdOKlRSV6k,369
42
+ lsst_ctrl_mpexec-29.2025.3800.dist-info/licenses/LICENSE,sha256=pRExkS03v0MQW-neNfIcaSL6aiAnoLxYgtZoFzQ6zkM,232
43
+ lsst_ctrl_mpexec-29.2025.3800.dist-info/licenses/bsd_license.txt,sha256=7MIcv8QRX9guUtqPSBDMPz2SnZ5swI-xZMqm_VDSfxY,1606
44
+ lsst_ctrl_mpexec-29.2025.3800.dist-info/licenses/gpl-v3.0.txt,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
45
+ lsst_ctrl_mpexec-29.2025.3800.dist-info/METADATA,sha256=0bFnou8FqzQ3afrZcJXM_rbL9YRydsKU7YhqJBe-6G4,2302
46
+ lsst_ctrl_mpexec-29.2025.3800.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
47
+ lsst_ctrl_mpexec-29.2025.3800.dist-info/entry_points.txt,sha256=aYE38yqZU8qvpLUUkXzgmUxDJYYknEqPxgxYkowrL4s,64
48
+ lsst_ctrl_mpexec-29.2025.3800.dist-info/top_level.txt,sha256=eUWiOuVVm9wwTrnAgiJT6tp6HQHXxIhj2QSZ7NYZH80,5
49
+ lsst_ctrl_mpexec-29.2025.3800.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
50
+ lsst_ctrl_mpexec-29.2025.3800.dist-info/RECORD,,