lsst-ctrl-mpexec 29.2025.4400__py3-none-any.whl → 29.2025.4600__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.
@@ -583,7 +583,7 @@ class ButlerFactory:
583
583
  # collection from its chain collection first.
584
584
  with butler.transaction():
585
585
  butler.collections.redefine_chain(self.output.name, chain_definition)
586
- butler.removeRuns([replaced], unstore=True)
586
+ butler.removeRuns([replaced])
587
587
  elif prune_replaced is not None:
588
588
  raise NotImplementedError(f"Unsupported --prune-replaced option '{prune_replaced}'.")
589
589
  if not self.output.exists:
@@ -141,7 +141,7 @@ concurrency = multiprocessing
141
141
  @click.command(cls=PipetaskCommand, epilog=epilog)
142
142
  @click.pass_context
143
143
  @ctrlMpExecOpts.show_option()
144
- @ctrlMpExecOpts.pipeline_build_options()
144
+ @ctrlMpExecOpts.pipeline_build_options(skip_butler_config=True)
145
145
  @ctrlMpExecOpts.qgraph_options()
146
146
  @ctrlMpExecOpts.butler_options()
147
147
  @option_section(sectionText="")
@@ -54,9 +54,15 @@ instrumentOptionHelp = (
54
54
  class pipeline_build_options(OptionGroup): # noqa: N801
55
55
  """Decorator to add options to the command function for building a
56
56
  pipeline.
57
+
58
+ Parameters
59
+ ----------
60
+ skip_butler_config : `bool`, optional
61
+ If `True` the butler configuration option will not be included and will
62
+ be assumed to be added explicitly elsewhere.
57
63
  """
58
64
 
59
- def __init__(self) -> None:
65
+ def __init__(self, skip_butler_config: bool = False) -> None:
60
66
  self.decorators = [
61
67
  option_section(sectionText="Pipeline build options:"),
62
68
  ctrlMpExecOpts.pipeline_option(),
@@ -76,8 +82,9 @@ class pipeline_build_options(OptionGroup): # noqa: N801
76
82
  ctrlMpExecOpts.pipeline_dot_option(),
77
83
  ctrlMpExecOpts.pipeline_mermaid_option(),
78
84
  pipeBaseOpts.instrument_option(help=instrumentOptionHelp, metavar="instrument", multiple=True),
79
- ctrlMpExecOpts.butler_config_option(required=False),
80
85
  ]
86
+ if not skip_butler_config:
87
+ self.decorators.append(ctrlMpExecOpts.butler_config_option(required=False))
81
88
 
82
89
 
83
90
  class coverage_options(OptionGroup): # noqa: N801
@@ -95,9 +102,23 @@ class coverage_options(OptionGroup): # noqa: N801
95
102
  class qgraph_options(OptionGroup): # noqa: N801
96
103
  """Decorator to add options to a command function for creating a quantum
97
104
  graph.
105
+
106
+ Parameters
107
+ ----------
108
+ skip_coverage : `bool`, optional
109
+ If `True` the coverage configuration options will not be included and
110
+ will be assumed to be added explicitly elsewhere.
111
+ skip_clobber : `bool`, optional
112
+ If `True` the clobber configuration option will not be included and
113
+ will be assumed to be added explicitly elsewhere.
114
+ skip_summary : `bool`, optional
115
+ If `True` the summary configuration option will not be included and
116
+ will be assumed to be added explicitly elsewhere.
98
117
  """
99
118
 
100
- def __init__(self) -> None:
119
+ def __init__(
120
+ self, skip_coverage: bool = False, skip_clobber: bool = False, skip_summary: bool = False
121
+ ) -> None:
101
122
  self.decorators = [
102
123
  option_section(sectionText="Quantum graph building options:"),
103
124
  ctrlMpExecOpts.qgraph_option(),
@@ -106,18 +127,21 @@ class qgraph_options(OptionGroup): # noqa: N801
106
127
  ctrlMpExecOpts.qgraph_datastore_records_option(),
107
128
  ctrlMpExecOpts.skip_existing_in_option(),
108
129
  ctrlMpExecOpts.skip_existing_option(),
109
- ctrlMpExecOpts.clobber_outputs_option(),
110
130
  ctrlMpExecOpts.save_qgraph_option(),
111
131
  ctrlMpExecOpts.qgraph_dot_option(),
112
132
  ctrlMpExecOpts.qgraph_mermaid_option(),
113
- ctrlMpExecOpts.summary_option(),
114
133
  ctrlMpExecOpts.dataset_query_constraint(),
115
134
  ctrlMpExecOpts.data_id_table_option(),
116
135
  ctrlMpExecOpts.mock_option(),
117
136
  ctrlMpExecOpts.mock_failure_option(),
118
137
  ctrlMpExecOpts.unmocked_dataset_types_option(),
119
- coverage_options(),
120
138
  ]
139
+ if not skip_clobber:
140
+ self.decorators.append(ctrlMpExecOpts.clobber_outputs_option())
141
+ if not skip_summary:
142
+ self.decorators.append(ctrlMpExecOpts.summary_option())
143
+ if not skip_coverage:
144
+ self.decorators.append(coverage_options())
121
145
 
122
146
 
123
147
  class butler_options(OptionGroup): # noqa: N801
@@ -187,8 +211,8 @@ class run_options(OptionGroup): # noqa: N801
187
211
  click.pass_context,
188
212
  ctrlMpExecOpts.debug_option(),
189
213
  ctrlMpExecOpts.show_option(),
190
- pipeline_build_options(),
191
- qgraph_options(),
214
+ pipeline_build_options(skip_butler_config=True),
215
+ qgraph_options(skip_coverage=True, skip_clobber=True, skip_summary=True),
192
216
  butler_options(),
193
217
  execution_options(),
194
218
  meta_info_options(),
@@ -227,7 +227,7 @@ def summarize_quantum_graph(qg: BaseQuantumGraph) -> int:
227
227
  Parameters
228
228
  ----------
229
229
  qg : `lsst.pipe.base.quantum_graph.BaseQuantumGraph`
230
- Quantum graph object
230
+ Quantum graph object.
231
231
 
232
232
  Returns
233
233
  -------
@@ -1,2 +1,2 @@
1
1
  __all__ = ["__version__"]
2
- __version__ = "29.2025.4400"
2
+ __version__ = "29.2025.4600"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lsst-ctrl-mpexec
3
- Version: 29.2025.4400
3
+ Version: 29.2025.4600
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-Expression: BSD-3-Clause OR GPL-3.0-or-later
@@ -16,16 +16,16 @@ lsst/ctrl/mpexec/simple_pipeline_executor.py,sha256=aVWgOds0ILCTzXdrWy0KFyjcIuqw
16
16
  lsst/ctrl/mpexec/singleQuantumExecutor.py,sha256=Y70xs5f06sEeDXF3cKNjxL4gdG69Osu8Xbol-vm-VIo,8616
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=c_EQrzHIElqjF0MSUCohtezaryfBlqz_McPyAghglVk,55
19
+ lsst/ctrl/mpexec/version.py,sha256=vB8XwkFrtPN40DIouI1mFlxm5jpAZvcGwleFGT1yZhI,55
20
20
  lsst/ctrl/mpexec/cli/__init__.py,sha256=6dpDHNBzyicVpFi1fsaiYVbYEMeoL57IHKkPaej24gs,1301
21
- lsst/ctrl/mpexec/cli/butler_factory.py,sha256=-Nlm5nVcWK_JbW8oc5qudu9yuZg5Pknf1LmtkxTkHJs,26713
21
+ lsst/ctrl/mpexec/cli/butler_factory.py,sha256=HkM-fjZrb1QBcYCUPoyql9WFkJc5521v03vX-ML7Kis,26699
22
22
  lsst/ctrl/mpexec/cli/pipetask.py,sha256=4HnhX9dCizCihVbpHVJX5WXO9TEli9oL6wA-tPh1_vA,2209
23
- lsst/ctrl/mpexec/cli/utils.py,sha256=WvpVompkHFbk-EAOVNTWXDd_OfWgp0bvzKKCcX1o5r8,9890
23
+ lsst/ctrl/mpexec/cli/utils.py,sha256=0iUM6LGPgSUv3Zh9N-Hi1VNyef3dEZbsR7GOySBU_q0,9891
24
24
  lsst/ctrl/mpexec/cli/cmd/__init__.py,sha256=nRmwwW5d55gAEkyE7NpSK8mxa56HcfEta2r-Y9I07F8,1661
25
- lsst/ctrl/mpexec/cli/cmd/commands.py,sha256=dO0WMFEwAAGoiNBgkQXu1oW-N89Eah89X2XR84PKQBg,17063
25
+ lsst/ctrl/mpexec/cli/cmd/commands.py,sha256=uCnIaFzHhTAt1Onvhp_evPVWlikB6OBMRU7P8XR_Y8s,17086
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
- lsst/ctrl/mpexec/cli/opt/optionGroups.py,sha256=v_fbB-frVUdXr82VY_mC8KHdUJSJNaU64qBJO4cA3To,7445
28
+ lsst/ctrl/mpexec/cli/opt/optionGroups.py,sha256=9UrFUWlkiBaAO2WDE0rKokAEXK-dm-SmBPyapY6B7t8,8622
29
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
@@ -38,13 +38,13 @@ lsst/ctrl/mpexec/cli/script/report.py,sha256=ItJitmYmWIDjj7PxRtP4qXLx-z5FAU6nSfI
38
38
  lsst/ctrl/mpexec/cli/script/run.py,sha256=d_oSGl6t9qEPeFPsZxlPQkUsGLNNl5wB1PXGn71Fw-s,14135
39
39
  lsst/ctrl/mpexec/cli/script/run_qbb.py,sha256=W1MvzoUBKvHNx17s1dvyGXaC7C5uGvbvDrF9meXbvok,10855
40
40
  lsst/ctrl/mpexec/cli/script/update_graph_run.py,sha256=2b0Q0j5yPC4bWxq0tsd4et2VmOnu-dQLQa94340z78Y,2623
41
- lsst_ctrl_mpexec-29.2025.4400.dist-info/licenses/COPYRIGHT,sha256=pGCjnRAnyt02a6_9PLzXQikpvYmvMmK9fCdOKlRSV6k,369
42
- lsst_ctrl_mpexec-29.2025.4400.dist-info/licenses/LICENSE,sha256=pRExkS03v0MQW-neNfIcaSL6aiAnoLxYgtZoFzQ6zkM,232
43
- lsst_ctrl_mpexec-29.2025.4400.dist-info/licenses/bsd_license.txt,sha256=7MIcv8QRX9guUtqPSBDMPz2SnZ5swI-xZMqm_VDSfxY,1606
44
- lsst_ctrl_mpexec-29.2025.4400.dist-info/licenses/gpl-v3.0.txt,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
45
- lsst_ctrl_mpexec-29.2025.4400.dist-info/METADATA,sha256=-5p-2xT5C443CWMUbPAUkc14dDPRKEZi0T1UfCtIKOo,2325
46
- lsst_ctrl_mpexec-29.2025.4400.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
47
- lsst_ctrl_mpexec-29.2025.4400.dist-info/entry_points.txt,sha256=aYE38yqZU8qvpLUUkXzgmUxDJYYknEqPxgxYkowrL4s,64
48
- lsst_ctrl_mpexec-29.2025.4400.dist-info/top_level.txt,sha256=eUWiOuVVm9wwTrnAgiJT6tp6HQHXxIhj2QSZ7NYZH80,5
49
- lsst_ctrl_mpexec-29.2025.4400.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
50
- lsst_ctrl_mpexec-29.2025.4400.dist-info/RECORD,,
41
+ lsst_ctrl_mpexec-29.2025.4600.dist-info/licenses/COPYRIGHT,sha256=pGCjnRAnyt02a6_9PLzXQikpvYmvMmK9fCdOKlRSV6k,369
42
+ lsst_ctrl_mpexec-29.2025.4600.dist-info/licenses/LICENSE,sha256=pRExkS03v0MQW-neNfIcaSL6aiAnoLxYgtZoFzQ6zkM,232
43
+ lsst_ctrl_mpexec-29.2025.4600.dist-info/licenses/bsd_license.txt,sha256=7MIcv8QRX9guUtqPSBDMPz2SnZ5swI-xZMqm_VDSfxY,1606
44
+ lsst_ctrl_mpexec-29.2025.4600.dist-info/licenses/gpl-v3.0.txt,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
45
+ lsst_ctrl_mpexec-29.2025.4600.dist-info/METADATA,sha256=h5UWaa5cdKodz04ZKJWGLi5q1S0FO7dD_f_TYlHzTbE,2325
46
+ lsst_ctrl_mpexec-29.2025.4600.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
47
+ lsst_ctrl_mpexec-29.2025.4600.dist-info/entry_points.txt,sha256=aYE38yqZU8qvpLUUkXzgmUxDJYYknEqPxgxYkowrL4s,64
48
+ lsst_ctrl_mpexec-29.2025.4600.dist-info/top_level.txt,sha256=eUWiOuVVm9wwTrnAgiJT6tp6HQHXxIhj2QSZ7NYZH80,5
49
+ lsst_ctrl_mpexec-29.2025.4600.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
50
+ lsst_ctrl_mpexec-29.2025.4600.dist-info/RECORD,,