lsst-ctrl-mpexec 29.2025.2400__py3-none-any.whl → 29.2025.3200__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.
Files changed (35) hide show
  1. lsst/ctrl/mpexec/__init__.py +1 -2
  2. lsst/ctrl/mpexec/cli/butler_factory.py +464 -0
  3. lsst/ctrl/mpexec/cli/cmd/commands.py +7 -1
  4. lsst/ctrl/mpexec/cli/opt/optionGroups.py +0 -13
  5. lsst/ctrl/mpexec/cli/opt/options.py +0 -46
  6. lsst/ctrl/mpexec/cli/script/build.py +49 -36
  7. lsst/ctrl/mpexec/cli/script/pre_exec_init_qbb.py +3 -1
  8. lsst/ctrl/mpexec/cli/script/qgraph.py +0 -25
  9. lsst/ctrl/mpexec/cli/script/run.py +2 -1
  10. lsst/ctrl/mpexec/cli/script/run_qbb.py +2 -1
  11. lsst/ctrl/mpexec/cmdLineFwk.py +30 -556
  12. lsst/ctrl/mpexec/execFixupDataId.py +9 -101
  13. lsst/ctrl/mpexec/executionGraphFixup.py +12 -37
  14. lsst/ctrl/mpexec/log_capture.py +9 -195
  15. lsst/ctrl/mpexec/mpGraphExecutor.py +60 -696
  16. lsst/ctrl/mpexec/quantumGraphExecutor.py +20 -90
  17. lsst/ctrl/mpexec/reports.py +30 -206
  18. lsst/ctrl/mpexec/separablePipelineExecutor.py +12 -263
  19. lsst/ctrl/mpexec/showInfo.py +2 -2
  20. lsst/ctrl/mpexec/simple_pipeline_executor.py +11 -590
  21. lsst/ctrl/mpexec/singleQuantumExecutor.py +75 -532
  22. lsst/ctrl/mpexec/taskFactory.py +12 -38
  23. lsst/ctrl/mpexec/version.py +1 -1
  24. {lsst_ctrl_mpexec-29.2025.2400.dist-info → lsst_ctrl_mpexec-29.2025.3200.dist-info}/METADATA +1 -1
  25. lsst_ctrl_mpexec-29.2025.3200.dist-info/RECORD +51 -0
  26. lsst/ctrl/mpexec/dotTools.py +0 -100
  27. lsst_ctrl_mpexec-29.2025.2400.dist-info/RECORD +0 -51
  28. {lsst_ctrl_mpexec-29.2025.2400.dist-info → lsst_ctrl_mpexec-29.2025.3200.dist-info}/WHEEL +0 -0
  29. {lsst_ctrl_mpexec-29.2025.2400.dist-info → lsst_ctrl_mpexec-29.2025.3200.dist-info}/entry_points.txt +0 -0
  30. {lsst_ctrl_mpexec-29.2025.2400.dist-info → lsst_ctrl_mpexec-29.2025.3200.dist-info}/licenses/COPYRIGHT +0 -0
  31. {lsst_ctrl_mpexec-29.2025.2400.dist-info → lsst_ctrl_mpexec-29.2025.3200.dist-info}/licenses/LICENSE +0 -0
  32. {lsst_ctrl_mpexec-29.2025.2400.dist-info → lsst_ctrl_mpexec-29.2025.3200.dist-info}/licenses/bsd_license.txt +0 -0
  33. {lsst_ctrl_mpexec-29.2025.2400.dist-info → lsst_ctrl_mpexec-29.2025.3200.dist-info}/licenses/gpl-v3.0.txt +0 -0
  34. {lsst_ctrl_mpexec-29.2025.2400.dist-info → lsst_ctrl_mpexec-29.2025.3200.dist-info}/top_level.txt +0 -0
  35. {lsst_ctrl_mpexec-29.2025.2400.dist-info → lsst_ctrl_mpexec-29.2025.3200.dist-info}/zip-safe +0 -0
@@ -25,46 +25,20 @@
25
25
  # You should have received a copy of the GNU General Public License
26
26
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
27
27
 
28
- from __future__ import annotations
28
+ __all__ = ("TaskFactory",)
29
29
 
30
- __all__ = ["TaskFactory"]
30
+ from deprecated.sphinx import deprecated
31
31
 
32
- import logging
33
- from collections.abc import Iterable
34
- from typing import TYPE_CHECKING, Any
32
+ import lsst.pipe.base
35
33
 
36
- from lsst.pipe.base import TaskFactory as BaseTaskFactory
37
- from lsst.pipe.base.pipeline_graph import TaskNode
34
+ # TODO[DM-51962]: Remove this module.
38
35
 
39
- if TYPE_CHECKING:
40
- from lsst.daf.butler import DatasetRef, LimitedButler
41
- from lsst.pipe.base import PipelineTask
42
36
 
43
- _LOG = logging.getLogger(__name__)
44
-
45
-
46
- class TaskFactory(BaseTaskFactory):
47
- """Class instantiating PipelineTasks."""
48
-
49
- def makeTask(
50
- self,
51
- task_node: TaskNode,
52
- /,
53
- butler: LimitedButler,
54
- initInputRefs: Iterable[DatasetRef] | None,
55
- ) -> PipelineTask:
56
- # docstring inherited
57
- config = task_node.config
58
- init_inputs: dict[str, Any] = {}
59
- init_input_refs_by_dataset_type = {}
60
- if initInputRefs is not None:
61
- init_input_refs_by_dataset_type = {ref.datasetType.name: ref for ref in initInputRefs}
62
- task_class = task_node.task_class
63
- if init_input_refs_by_dataset_type:
64
- for read_edge in task_node.init.inputs.values():
65
- init_inputs[read_edge.connection_name] = butler.get(
66
- init_input_refs_by_dataset_type[read_edge.dataset_type_name]
67
- )
68
- # make task instance
69
- task = task_class(config=config, initInputs=init_inputs, name=task_node.label)
70
- return task
37
+ @deprecated(
38
+ "The TaskFactory implementation has moved into its base class in lsst.pipe.base. "
39
+ "This forwarding shim will be removed after v30.",
40
+ version="v30",
41
+ category=FutureWarning,
42
+ )
43
+ class TaskFactory(lsst.pipe.base.TaskFactory): # noqa: D101
44
+ pass
@@ -1,2 +1,2 @@
1
1
  __all__ = ["__version__"]
2
- __version__ = "29.2025.2400"
2
+ __version__ = "29.2025.3200"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lsst-ctrl-mpexec
3
- Version: 29.2025.2400
3
+ Version: 29.2025.3200
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
@@ -0,0 +1,51 @@
1
+ lsst/__init__.py,sha256=aXdEOZVrBQISQi6XPS9s1NhBjIJaIwNNxCFRiGchRAw,1369
2
+ lsst/ctrl/__init__.py,sha256=aXdEOZVrBQISQi6XPS9s1NhBjIJaIwNNxCFRiGchRAw,1369
3
+ lsst/ctrl/mpexec/__init__.py,sha256=XOMrfYiBPZoiaxWTlzN-seJu258x42U1GdR_ti9jLMk,1733
4
+ lsst/ctrl/mpexec/_pipeline_graph_factory.py,sha256=suzWUn9YGn0CTA_3N1Wd-sUo7TFxuo_6VZ2nO0CJ5a8,3552
5
+ lsst/ctrl/mpexec/cmdLineFwk.py,sha256=CZrFRFvEHyN1RFp0ToJH3AEeofaeCDQh4-dH-eAmnM4,21603
6
+ lsst/ctrl/mpexec/execFixupDataId.py,sha256=26eFIrZ-I5oTGoBzO35WH2UtwYIPe5aX37IHE9OfAa0,1633
7
+ lsst/ctrl/mpexec/executionGraphFixup.py,sha256=hpkU0cCRcz80c-YQS1eU5G4riRTSUfOfPjCehTkWTMA,1776
8
+ lsst/ctrl/mpexec/log_capture.py,sha256=Y8ExKqrpyboBoi6giY9dlL4OyCrZn-c_6EB8Oh_z6dc,1605
9
+ lsst/ctrl/mpexec/mpGraphExecutor.py,sha256=RvmnS-PNSf3GkTnnjWyXsLkjq8wTGXXUtKXbxZndv2k,4864
10
+ lsst/ctrl/mpexec/preExecInit.py,sha256=e9C853k5EPD_9QSRDmyhv7fCgMnsSiqbsUUjiUCISPM,8733
11
+ lsst/ctrl/mpexec/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
+ lsst/ctrl/mpexec/quantumGraphExecutor.py,sha256=7LCoqsmNSWUJ1ph1bfgrVrpk5Ug5ArzniFkqcxgjfhI,2106
13
+ lsst/ctrl/mpexec/reports.py,sha256=EvHjW9wdjfN1lj4DQH634oJ9zv3wYKySvJ_UtFDtNHY,2460
14
+ lsst/ctrl/mpexec/separablePipelineExecutor.py,sha256=yHymF9jSthVCl_230TzRqQrcAmohSgR7Me8YAbMazM8,1818
15
+ lsst/ctrl/mpexec/showInfo.py,sha256=8kDUG0t8jla_sNl2gh6bdhp7EFZCFUkOPGbEziYfx3g,16415
16
+ lsst/ctrl/mpexec/simple_pipeline_executor.py,sha256=aVWgOds0ILCTzXdrWy0KFyjcIuqw6cNq8alAJeZd8AE,1797
17
+ lsst/ctrl/mpexec/singleQuantumExecutor.py,sha256=Y6ufL6y5PuQ6-x8sFu_m2moCIA3JvOf6Gb9PotXeTno,8649
18
+ lsst/ctrl/mpexec/taskFactory.py,sha256=0TdCM-le7CXhobVbWPTqcq9sOrGceUY6mmkzzWhi0dM,1707
19
+ lsst/ctrl/mpexec/util.py,sha256=y2Rw5PL40_EuLtVxiqSVX0JfPV4IrFl1LfOMUWx2u30,4236
20
+ lsst/ctrl/mpexec/version.py,sha256=5kA_2hRyFYLCSuDYZQBSx1jsWCdezZbf05_1pktQdgw,55
21
+ lsst/ctrl/mpexec/cli/__init__.py,sha256=6dpDHNBzyicVpFi1fsaiYVbYEMeoL57IHKkPaej24gs,1301
22
+ lsst/ctrl/mpexec/cli/butler_factory.py,sha256=06V0ZvGc1cdt7vVOIQWU6O7N8qTbhzb_K6SMQ4D13Cg,20032
23
+ lsst/ctrl/mpexec/cli/pipetask.py,sha256=4HnhX9dCizCihVbpHVJX5WXO9TEli9oL6wA-tPh1_vA,2209
24
+ lsst/ctrl/mpexec/cli/utils.py,sha256=5iOrlj5jJTWtZS0BMLsuiCGAvxbfrjd1MSyXxBthWcc,6503
25
+ lsst/ctrl/mpexec/cli/cmd/__init__.py,sha256=nRmwwW5d55gAEkyE7NpSK8mxa56HcfEta2r-Y9I07F8,1661
26
+ lsst/ctrl/mpexec/cli/cmd/commands.py,sha256=TU9--_pfYW-P9qbX-hx8p2HnhDmDK3HO8Suv8YAz6cU,18234
27
+ lsst/ctrl/mpexec/cli/opt/__init__.py,sha256=IzUInuJj9igiaNcEqMx0adelgJtQC5_XMYnaiizBn0A,1378
28
+ lsst/ctrl/mpexec/cli/opt/arguments.py,sha256=vjUw0ZN_4HStp-_3ne6AT5S_eH7sly3OVfL07tgrJnY,1572
29
+ lsst/ctrl/mpexec/cli/opt/optionGroups.py,sha256=4pbhbUYppAiHSLmoGb7KvDq18YiO_mhx5IhM-5w5VUo,7501
30
+ lsst/ctrl/mpexec/cli/opt/options.py,sha256=7VKlAplAeyssZ3Lxc2PSzX29zry35USOaUcyXXwD-p4,19592
31
+ lsst/ctrl/mpexec/cli/script/__init__.py,sha256=eCuF4FAI5D3pl05IMJj7TCkZq-hireua2mA5Ui-mKSI,1624
32
+ lsst/ctrl/mpexec/cli/script/build.py,sha256=3_ohOGuope_hCrvBAo1X31nejgTZ73PZv_ew3ykhYIc,6919
33
+ lsst/ctrl/mpexec/cli/script/cleanup.py,sha256=D7W-azf4mNJcIWhbU5uCRCi94mkb8-Q2ksRFblQGrUw,4990
34
+ lsst/ctrl/mpexec/cli/script/confirmable.py,sha256=Bo1GSTZQn44d_TRj6N3YfpYcZiuHEYoz26WZQwMyb4A,3918
35
+ lsst/ctrl/mpexec/cli/script/pre_exec_init_qbb.py,sha256=uaJKPoETTzlCveYX1ux8vdRieIsUSGQDvOh8HQ8HZuY,2506
36
+ lsst/ctrl/mpexec/cli/script/purge.py,sha256=gYwSsZfTBP6oDcDp_YdqQEKGvAStvsj5hwNw42S8ptE,10637
37
+ lsst/ctrl/mpexec/cli/script/qgraph.py,sha256=-7jG6UQXol8wWuTdzkD31IivUsXoqtkKE5jNQ02j-pI,8898
38
+ lsst/ctrl/mpexec/cli/script/report.py,sha256=ItJitmYmWIDjj7PxRtP4qXLx-z5FAU6nSfI2gx0GS5k,12800
39
+ lsst/ctrl/mpexec/cli/script/run.py,sha256=fi7weGOMYae9gQ9PLbWG-_1l_vSaAg-aucRn_aqp38Q,9793
40
+ lsst/ctrl/mpexec/cli/script/run_qbb.py,sha256=5wFxv1kWk4VP7OrwtpCX96mMXWDi0zd1Zo21y-Iki_E,5554
41
+ lsst/ctrl/mpexec/cli/script/update_graph_run.py,sha256=v_EdOaD6jR_vSlgm_5-pwUjoNEFMrAuYFM1xIaHVU3Q,2597
42
+ lsst_ctrl_mpexec-29.2025.3200.dist-info/licenses/COPYRIGHT,sha256=pGCjnRAnyt02a6_9PLzXQikpvYmvMmK9fCdOKlRSV6k,369
43
+ lsst_ctrl_mpexec-29.2025.3200.dist-info/licenses/LICENSE,sha256=pRExkS03v0MQW-neNfIcaSL6aiAnoLxYgtZoFzQ6zkM,232
44
+ lsst_ctrl_mpexec-29.2025.3200.dist-info/licenses/bsd_license.txt,sha256=7MIcv8QRX9guUtqPSBDMPz2SnZ5swI-xZMqm_VDSfxY,1606
45
+ lsst_ctrl_mpexec-29.2025.3200.dist-info/licenses/gpl-v3.0.txt,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
46
+ lsst_ctrl_mpexec-29.2025.3200.dist-info/METADATA,sha256=cON9Bo-slsPTaqPtLJa-xfQG0rdpvmQ7NhplWZIPUVU,2302
47
+ lsst_ctrl_mpexec-29.2025.3200.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
48
+ lsst_ctrl_mpexec-29.2025.3200.dist-info/entry_points.txt,sha256=aYE38yqZU8qvpLUUkXzgmUxDJYYknEqPxgxYkowrL4s,64
49
+ lsst_ctrl_mpexec-29.2025.3200.dist-info/top_level.txt,sha256=eUWiOuVVm9wwTrnAgiJT6tp6HQHXxIhj2QSZ7NYZH80,5
50
+ lsst_ctrl_mpexec-29.2025.3200.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
51
+ lsst_ctrl_mpexec-29.2025.3200.dist-info/RECORD,,
@@ -1,100 +0,0 @@
1
- # This file is part of ctrl_mpexec.
2
- #
3
- # Developed for the LSST Data Management System.
4
- # This product includes software developed by the LSST Project
5
- # (http://www.lsst.org).
6
- # See the COPYRIGHT file at the top-level directory of this distribution
7
- # for details of code ownership.
8
- #
9
- # This software is dual licensed under the GNU General Public License and also
10
- # under a 3-clause BSD license. Recipients may choose which of these licenses
11
- # to use; please see the files gpl-3.0.txt and/or bsd_license.txt,
12
- # respectively. If you choose the GPL option then the following text applies
13
- # (but note that there is still no warranty even if you opt for BSD instead):
14
- #
15
- # This program is free software: you can redistribute it and/or modify
16
- # it under the terms of the GNU General Public License as published by
17
- # the Free Software Foundation, either version 3 of the License, or
18
- # (at your option) any later version.
19
- #
20
- # This program is distributed in the hope that it will be useful,
21
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
22
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23
- # GNU General Public License for more details.
24
- #
25
- # You should have received a copy of the GNU General Public License
26
- # along with this program. If not, see <http://www.gnu.org/licenses/>.
27
-
28
- """Module defining few methods to generate GraphViz diagrams from pipelines
29
- or quantum graphs.
30
- """
31
-
32
- from __future__ import annotations
33
-
34
- __all__ = ["graph2dot", "pipeline2dot"]
35
-
36
- from collections.abc import Iterable
37
- from typing import Any
38
-
39
- from deprecated.sphinx import deprecated
40
-
41
- from lsst.pipe.base import Pipeline, QuantumGraph, TaskDef
42
- from lsst.pipe.base.dot_tools import graph2dot as _graph2dot
43
- from lsst.pipe.base.dot_tools import pipeline2dot as _pipeline2dot
44
-
45
-
46
- @deprecated(
47
- "graph2dot should now be imported from lsst.pipe.base.dot_tools. Will be removed in v29.",
48
- version="v27.0",
49
- category=FutureWarning,
50
- )
51
- def graph2dot(qgraph: QuantumGraph, file: Any) -> None:
52
- """Convert QuantumGraph into GraphViz digraph.
53
-
54
- This method is mostly for documentation/presentation purposes.
55
-
56
- Parameters
57
- ----------
58
- qgraph : `lsst.pipe.base.QuantumGraph`
59
- QuantumGraph instance.
60
- file : `str` or file object
61
- File where GraphViz graph (DOT language) is written, can be a file name
62
- or file object.
63
-
64
- Raises
65
- ------
66
- OSError
67
- Raised if the output file cannot be opened.
68
- ImportError
69
- Raised if the task class cannot be imported.
70
- """
71
- _graph2dot(qgraph, file)
72
-
73
-
74
- @deprecated(
75
- "pipeline2dot should now be imported from lsst.pipe.base.dot_tools. Will be removed in v29.",
76
- version="v27.0",
77
- category=FutureWarning,
78
- )
79
- def pipeline2dot(pipeline: Pipeline | Iterable[TaskDef], file: Any) -> None:
80
- """Convert `~lsst.pipe.base.Pipeline` into GraphViz digraph.
81
-
82
- This method is mostly for documentation/presentation purposes.
83
- Unlike other methods this method does not validate graph consistency.
84
-
85
- Parameters
86
- ----------
87
- pipeline : `lsst.pipe.base.Pipeline`
88
- Pipeline description.
89
- file : `str` or file object
90
- File where GraphViz graph (DOT language) is written, can be a file name
91
- or file object.
92
-
93
- Raises
94
- ------
95
- OSError
96
- Raised if the output file cannot be opened.
97
- ImportError
98
- Raised if the task class cannot be imported.
99
- """
100
- _pipeline2dot(pipeline, file)
@@ -1,51 +0,0 @@
1
- lsst/__init__.py,sha256=aXdEOZVrBQISQi6XPS9s1NhBjIJaIwNNxCFRiGchRAw,1369
2
- lsst/ctrl/__init__.py,sha256=aXdEOZVrBQISQi6XPS9s1NhBjIJaIwNNxCFRiGchRAw,1369
3
- lsst/ctrl/mpexec/__init__.py,sha256=c2mK9--wemp2AEa81CSMkrqaIjJ1_iOs_M-O8CHJxB4,1757
4
- lsst/ctrl/mpexec/_pipeline_graph_factory.py,sha256=suzWUn9YGn0CTA_3N1Wd-sUo7TFxuo_6VZ2nO0CJ5a8,3552
5
- lsst/ctrl/mpexec/cmdLineFwk.py,sha256=hrjDfsaBO0oTqliksQgZywyN2uVY7E7DLZzUSvAOA4Y,43759
6
- lsst/ctrl/mpexec/dotTools.py,sha256=nx31DC7NkQM766sC97lPQMI22snVaWS7USFMFVLChqk,3421
7
- lsst/ctrl/mpexec/execFixupDataId.py,sha256=MUirmuoQiWj7C7wQ23QGkgMqx_5_CP4_UMV6h_gVfxk,5056
8
- lsst/ctrl/mpexec/executionGraphFixup.py,sha256=1z4P4YmtLTMPoMxmFiOnzljLcP9B5V1SCG9haqR_TyI,2830
9
- lsst/ctrl/mpexec/log_capture.py,sha256=97s0mkM30hkf4eEKPzri74Rkp7OxQTxsgTnBgVmn3yM,9411
10
- lsst/ctrl/mpexec/mpGraphExecutor.py,sha256=TQahVw6DSWO8uCkp2NEOsAMOK-xCZ1JA-9R3Azyrt3Y,31685
11
- lsst/ctrl/mpexec/preExecInit.py,sha256=e9C853k5EPD_9QSRDmyhv7fCgMnsSiqbsUUjiUCISPM,8733
12
- lsst/ctrl/mpexec/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
- lsst/ctrl/mpexec/quantumGraphExecutor.py,sha256=DV0j_CNjS8CNMR-kiVIWj1vyzLKZzi4wilc_r0z2L0Q,4386
14
- lsst/ctrl/mpexec/reports.py,sha256=zxZOkJWhTFdl4eJTOYsM-58tqRbbyF5-cQ-zF-zIR9Y,7677
15
- lsst/ctrl/mpexec/separablePipelineExecutor.py,sha256=6QvZ9EFHoqXwYjHbcNe9wWMssFbAg2I9mNpjFnTSiM0,12074
16
- lsst/ctrl/mpexec/showInfo.py,sha256=elrWQ8QPusZguLqYhvmMjYaNmoJgWpQDr3uQ0QhB1HI,16407
17
- lsst/ctrl/mpexec/simple_pipeline_executor.py,sha256=WfeoCtGKIId0FKi70PBGu9-l8g0TQ03YhjTsZvB3SBw,27323
18
- lsst/ctrl/mpexec/singleQuantumExecutor.py,sha256=sYYdUe6gKRZELFMVHxQLS5ZnBcrKJpxKnXFwchn-7Z8,29023
19
- lsst/ctrl/mpexec/taskFactory.py,sha256=c4xj8cR_Ts5uzzGovh87ZKdVeeXy5E3lIjCwJnDuOqg,2720
20
- lsst/ctrl/mpexec/util.py,sha256=y2Rw5PL40_EuLtVxiqSVX0JfPV4IrFl1LfOMUWx2u30,4236
21
- lsst/ctrl/mpexec/version.py,sha256=AyivLkwA4FcYO6eiFsfTA_EuqMhydgvzBupNZlQZL-E,55
22
- lsst/ctrl/mpexec/cli/__init__.py,sha256=6dpDHNBzyicVpFi1fsaiYVbYEMeoL57IHKkPaej24gs,1301
23
- lsst/ctrl/mpexec/cli/pipetask.py,sha256=4HnhX9dCizCihVbpHVJX5WXO9TEli9oL6wA-tPh1_vA,2209
24
- lsst/ctrl/mpexec/cli/utils.py,sha256=5iOrlj5jJTWtZS0BMLsuiCGAvxbfrjd1MSyXxBthWcc,6503
25
- lsst/ctrl/mpexec/cli/cmd/__init__.py,sha256=nRmwwW5d55gAEkyE7NpSK8mxa56HcfEta2r-Y9I07F8,1661
26
- lsst/ctrl/mpexec/cli/cmd/commands.py,sha256=hb4o2xaGRcImIv4FzHw7ABOdqTJWmlB07EWL8layVlM,17856
27
- lsst/ctrl/mpexec/cli/opt/__init__.py,sha256=IzUInuJj9igiaNcEqMx0adelgJtQC5_XMYnaiizBn0A,1378
28
- lsst/ctrl/mpexec/cli/opt/arguments.py,sha256=vjUw0ZN_4HStp-_3ne6AT5S_eH7sly3OVfL07tgrJnY,1572
29
- lsst/ctrl/mpexec/cli/opt/optionGroups.py,sha256=qtpwlgfvEzAs0CNav7t9ylywWBavoeWlZfYhRQEuZTw,8132
30
- lsst/ctrl/mpexec/cli/opt/options.py,sha256=1JK67cMx9F2poURXkA-q3Uru4B86CZoNtSzM6vmZ7pw,20867
31
- lsst/ctrl/mpexec/cli/script/__init__.py,sha256=eCuF4FAI5D3pl05IMJj7TCkZq-hireua2mA5Ui-mKSI,1624
32
- lsst/ctrl/mpexec/cli/script/build.py,sha256=Ff_8ffBmxuJi45x7-rUb-f0axucagYs6rNvBowwVmq0,6149
33
- lsst/ctrl/mpexec/cli/script/cleanup.py,sha256=D7W-azf4mNJcIWhbU5uCRCi94mkb8-Q2ksRFblQGrUw,4990
34
- lsst/ctrl/mpexec/cli/script/confirmable.py,sha256=Bo1GSTZQn44d_TRj6N3YfpYcZiuHEYoz26WZQwMyb4A,3918
35
- lsst/ctrl/mpexec/cli/script/pre_exec_init_qbb.py,sha256=DGNseiavrI1VxR_o6vCelbPvr9kCQZzroZHHSQe-RTE,2479
36
- lsst/ctrl/mpexec/cli/script/purge.py,sha256=gYwSsZfTBP6oDcDp_YdqQEKGvAStvsj5hwNw42S8ptE,10637
37
- lsst/ctrl/mpexec/cli/script/qgraph.py,sha256=ncjbtJ7AMp-Obo524HAC2E4Hnqyk1Aji4mJPAZUGMDM,10048
38
- lsst/ctrl/mpexec/cli/script/report.py,sha256=ItJitmYmWIDjj7PxRtP4qXLx-z5FAU6nSfI2gx0GS5k,12800
39
- lsst/ctrl/mpexec/cli/script/run.py,sha256=22g7vBhGDGsFSQq7CtruTf-bivo3t53decBAV0wAg1g,9767
40
- lsst/ctrl/mpexec/cli/script/run_qbb.py,sha256=v05gQvngvKCWvFkRifQoUoPnGnkQ57ZBGWaNVFnmCB8,5528
41
- lsst/ctrl/mpexec/cli/script/update_graph_run.py,sha256=v_EdOaD6jR_vSlgm_5-pwUjoNEFMrAuYFM1xIaHVU3Q,2597
42
- lsst_ctrl_mpexec-29.2025.2400.dist-info/licenses/COPYRIGHT,sha256=pGCjnRAnyt02a6_9PLzXQikpvYmvMmK9fCdOKlRSV6k,369
43
- lsst_ctrl_mpexec-29.2025.2400.dist-info/licenses/LICENSE,sha256=pRExkS03v0MQW-neNfIcaSL6aiAnoLxYgtZoFzQ6zkM,232
44
- lsst_ctrl_mpexec-29.2025.2400.dist-info/licenses/bsd_license.txt,sha256=7MIcv8QRX9guUtqPSBDMPz2SnZ5swI-xZMqm_VDSfxY,1606
45
- lsst_ctrl_mpexec-29.2025.2400.dist-info/licenses/gpl-v3.0.txt,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
46
- lsst_ctrl_mpexec-29.2025.2400.dist-info/METADATA,sha256=1N_YCO1GedGSdha54HOFFhf9jYdfu0QJgoOF4phOsnI,2302
47
- lsst_ctrl_mpexec-29.2025.2400.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
48
- lsst_ctrl_mpexec-29.2025.2400.dist-info/entry_points.txt,sha256=aYE38yqZU8qvpLUUkXzgmUxDJYYknEqPxgxYkowrL4s,64
49
- lsst_ctrl_mpexec-29.2025.2400.dist-info/top_level.txt,sha256=eUWiOuVVm9wwTrnAgiJT6tp6HQHXxIhj2QSZ7NYZH80,5
50
- lsst_ctrl_mpexec-29.2025.2400.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
51
- lsst_ctrl_mpexec-29.2025.2400.dist-info/RECORD,,