cmd-queue 0.1.19__py3-none-any.whl → 0.2.0__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.
Potentially problematic release.
This version of cmd-queue might be problematic. Click here for more details.
- cmd_queue/__init__.py +1 -1
- cmd_queue/__main__.pyi +3 -0
- cmd_queue/airflow_queue.pyi +84 -0
- cmd_queue/base_queue.py +5 -0
- cmd_queue/base_queue.pyi +86 -0
- cmd_queue/cli_boilerplate.pyi +32 -0
- cmd_queue/main.py +4 -1
- cmd_queue/main.pyi +66 -0
- cmd_queue/monitor_app.pyi +41 -0
- cmd_queue/py.typed +0 -0
- cmd_queue/serial_queue.pyi +124 -0
- cmd_queue/slurm_queue.py +37 -8
- cmd_queue/slurm_queue.pyi +97 -0
- cmd_queue/tmux_queue.py +20 -0
- cmd_queue/tmux_queue.pyi +93 -0
- cmd_queue/util/richer.pyi +14 -0
- cmd_queue/util/texter.pyi +14 -0
- cmd_queue/util/textual_extensions.pyi +62 -0
- cmd_queue/util/util_algo.pyi +7 -0
- cmd_queue/util/util_network_text.pyi +89 -0
- cmd_queue/util/util_networkx.pyi +7 -0
- cmd_queue/util/util_tags.pyi +8 -0
- cmd_queue/util/util_tmux.pyi +13 -0
- cmd_queue/util/util_yaml.pyi +43 -0
- {cmd_queue-0.1.19.dist-info → cmd_queue-0.2.0.dist-info}/METADATA +247 -183
- cmd_queue-0.2.0.dist-info/RECORD +45 -0
- {cmd_queue-0.1.19.dist-info → cmd_queue-0.2.0.dist-info}/WHEEL +1 -1
- {cmd_queue-0.1.19.dist-info → cmd_queue-0.2.0.dist-info}/entry_points.txt +0 -1
- cmd_queue-0.1.19.dist-info/RECORD +0 -26
- {cmd_queue-0.1.19.dist-info → cmd_queue-0.2.0.dist-info}/LICENSE +0 -0
- {cmd_queue-0.1.19.dist-info → cmd_queue-0.2.0.dist-info}/top_level.txt +0 -0
cmd_queue/tmux_queue.pyi
ADDED
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
from _typeshed import Incomplete
|
|
2
|
+
from cmd_queue import base_queue
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class TMUXMultiQueue(base_queue.Queue):
|
|
6
|
+
name: Incomplete
|
|
7
|
+
rootid: Incomplete
|
|
8
|
+
pathid: Incomplete
|
|
9
|
+
dpath: Incomplete
|
|
10
|
+
size: Incomplete
|
|
11
|
+
environ: Incomplete
|
|
12
|
+
fpath: Incomplete
|
|
13
|
+
gpus: Incomplete
|
|
14
|
+
cmd_verbose: int
|
|
15
|
+
jobs: Incomplete
|
|
16
|
+
header_commands: Incomplete
|
|
17
|
+
job_info_dpath: Incomplete
|
|
18
|
+
|
|
19
|
+
def __init__(self,
|
|
20
|
+
size: int = ...,
|
|
21
|
+
name: Incomplete | None = ...,
|
|
22
|
+
dpath: Incomplete | None = ...,
|
|
23
|
+
rootid: Incomplete | None = ...,
|
|
24
|
+
environ: Incomplete | None = ...,
|
|
25
|
+
gpus: Incomplete | None = ...,
|
|
26
|
+
gres: Incomplete | None = ...) -> None:
|
|
27
|
+
...
|
|
28
|
+
|
|
29
|
+
@classmethod
|
|
30
|
+
def is_available(cls):
|
|
31
|
+
...
|
|
32
|
+
|
|
33
|
+
def __nice__(self):
|
|
34
|
+
...
|
|
35
|
+
|
|
36
|
+
workers: Incomplete
|
|
37
|
+
|
|
38
|
+
def order_jobs(self) -> None:
|
|
39
|
+
...
|
|
40
|
+
|
|
41
|
+
def add_header_command(self, command) -> None:
|
|
42
|
+
...
|
|
43
|
+
|
|
44
|
+
def finalize_text(self, **kwargs):
|
|
45
|
+
...
|
|
46
|
+
|
|
47
|
+
def write(self) -> None:
|
|
48
|
+
...
|
|
49
|
+
|
|
50
|
+
def kill_other_queues(self, ask_first: bool = ...) -> None:
|
|
51
|
+
...
|
|
52
|
+
|
|
53
|
+
def handle_other_sessions(self, other_session_handler) -> None:
|
|
54
|
+
...
|
|
55
|
+
|
|
56
|
+
def run(self,
|
|
57
|
+
block: bool = ...,
|
|
58
|
+
onfail: str = ...,
|
|
59
|
+
onexit: str = ...,
|
|
60
|
+
system: bool = ...,
|
|
61
|
+
with_textual: str = ...,
|
|
62
|
+
check_other_sessions: Incomplete | None = ...,
|
|
63
|
+
other_session_handler: str = 'auto',
|
|
64
|
+
**kw):
|
|
65
|
+
...
|
|
66
|
+
|
|
67
|
+
def read_state(self):
|
|
68
|
+
...
|
|
69
|
+
|
|
70
|
+
def serial_run(self) -> None:
|
|
71
|
+
...
|
|
72
|
+
|
|
73
|
+
def monitor(self, refresh_rate: float = ..., with_textual: str = ...):
|
|
74
|
+
...
|
|
75
|
+
|
|
76
|
+
def print_commands(self, *args, **kwargs) -> None:
|
|
77
|
+
...
|
|
78
|
+
|
|
79
|
+
def current_output(self) -> None:
|
|
80
|
+
...
|
|
81
|
+
|
|
82
|
+
def capture(self) -> None:
|
|
83
|
+
...
|
|
84
|
+
|
|
85
|
+
def kill(self) -> None:
|
|
86
|
+
...
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
def has_stdin():
|
|
90
|
+
...
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
__tmux_notes__: str
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
from _typeshed import Incomplete
|
|
2
|
+
from rich.console import RenderableType
|
|
3
|
+
from rich.repr import Result
|
|
4
|
+
from textual.app import App
|
|
5
|
+
from textual.reactive import Reactive
|
|
6
|
+
from textual.widget import Widget
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class class_or_instancemethod(classmethod):
|
|
10
|
+
|
|
11
|
+
def __get__(self, instance, type_):
|
|
12
|
+
...
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class InstanceRunnableApp(App):
|
|
16
|
+
|
|
17
|
+
def run(cls_or_self,
|
|
18
|
+
console: Incomplete | None = ...,
|
|
19
|
+
screen: bool = True,
|
|
20
|
+
driver: Incomplete | None = ...,
|
|
21
|
+
**kwargs):
|
|
22
|
+
...
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class ExtHeader(Widget):
|
|
26
|
+
tall: Incomplete
|
|
27
|
+
style: Incomplete
|
|
28
|
+
clock: Incomplete
|
|
29
|
+
|
|
30
|
+
def __init__(self,
|
|
31
|
+
*,
|
|
32
|
+
tall: bool = True,
|
|
33
|
+
style: str = ...,
|
|
34
|
+
clock: bool = True) -> None:
|
|
35
|
+
...
|
|
36
|
+
|
|
37
|
+
title: Reactive[str]
|
|
38
|
+
sub_title: Reactive[str]
|
|
39
|
+
|
|
40
|
+
@property
|
|
41
|
+
def full_title(self) -> str:
|
|
42
|
+
...
|
|
43
|
+
|
|
44
|
+
def __rich_repr__(self) -> Result:
|
|
45
|
+
...
|
|
46
|
+
|
|
47
|
+
layout_size: Incomplete
|
|
48
|
+
|
|
49
|
+
async def watch_tall(self, tall: bool) -> None:
|
|
50
|
+
...
|
|
51
|
+
|
|
52
|
+
def get_clock(self) -> str:
|
|
53
|
+
...
|
|
54
|
+
|
|
55
|
+
def render(self) -> RenderableType:
|
|
56
|
+
...
|
|
57
|
+
|
|
58
|
+
async def on_mount(self, event) -> None:
|
|
59
|
+
...
|
|
60
|
+
|
|
61
|
+
async def on_click(self, event) -> None:
|
|
62
|
+
...
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
from _typeshed import Incomplete
|
|
2
|
+
from collections.abc import Generator
|
|
3
|
+
from typing import Any
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class BaseGlyphs:
|
|
7
|
+
|
|
8
|
+
@classmethod
|
|
9
|
+
def as_dict(cls):
|
|
10
|
+
...
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class AsciiBaseGlyphs(BaseGlyphs):
|
|
14
|
+
empty: str
|
|
15
|
+
newtree_last: str
|
|
16
|
+
newtree_mid: str
|
|
17
|
+
endof_forest: str
|
|
18
|
+
within_forest: str
|
|
19
|
+
within_tree: str
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class AsciiDirectedGlyphs(AsciiBaseGlyphs):
|
|
23
|
+
last: str
|
|
24
|
+
mid: str
|
|
25
|
+
backedge: str
|
|
26
|
+
vertical_edge: str
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class AsciiUndirectedGlyphs(AsciiBaseGlyphs):
|
|
30
|
+
last: str
|
|
31
|
+
mid: str
|
|
32
|
+
backedge: str
|
|
33
|
+
vertical_edge: str
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class UtfBaseGlyphs(BaseGlyphs):
|
|
37
|
+
empty: str
|
|
38
|
+
newtree_last: str
|
|
39
|
+
newtree_mid: str
|
|
40
|
+
endof_forest: str
|
|
41
|
+
within_forest: str
|
|
42
|
+
within_tree: str
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
class UtfDirectedGlyphs(UtfBaseGlyphs):
|
|
46
|
+
last: str
|
|
47
|
+
mid: str
|
|
48
|
+
backedge: str
|
|
49
|
+
vertical_edge: str
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class UtfUndirectedGlyphs(UtfBaseGlyphs):
|
|
53
|
+
last: str
|
|
54
|
+
mid: str
|
|
55
|
+
backedge: str
|
|
56
|
+
vertical_edge: str
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
def generate_network_text(
|
|
60
|
+
graph,
|
|
61
|
+
with_labels: bool = ...,
|
|
62
|
+
sources: Incomplete | None = ...,
|
|
63
|
+
max_depth: Incomplete | None = ...,
|
|
64
|
+
ascii_only: bool = ...,
|
|
65
|
+
vertical_chains: bool = ...) -> Generator[Any, None, Any]:
|
|
66
|
+
...
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
def write_network_text(graph,
|
|
70
|
+
path: Incomplete | None = ...,
|
|
71
|
+
with_labels: bool = ...,
|
|
72
|
+
sources: Incomplete | None = ...,
|
|
73
|
+
max_depth: Incomplete | None = ...,
|
|
74
|
+
ascii_only: bool = ...,
|
|
75
|
+
end: str = ...,
|
|
76
|
+
vertical_chains: bool = ...) -> None:
|
|
77
|
+
...
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
def forest_str(graph,
|
|
81
|
+
with_labels: bool = ...,
|
|
82
|
+
sources: Incomplete | None = ...,
|
|
83
|
+
write: Incomplete | None = ...,
|
|
84
|
+
ascii_only: bool = ...):
|
|
85
|
+
...
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
def parse_network_text(lines):
|
|
89
|
+
...
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
from typing import Any
|
|
2
|
+
import io
|
|
3
|
+
from os import PathLike
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class _YamlRepresenter:
|
|
7
|
+
|
|
8
|
+
@staticmethod
|
|
9
|
+
def str_presenter(dumper, data):
|
|
10
|
+
...
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Yaml:
|
|
14
|
+
|
|
15
|
+
@staticmethod
|
|
16
|
+
def dumps(data: Any, backend: str = 'ruamel') -> str:
|
|
17
|
+
...
|
|
18
|
+
|
|
19
|
+
@staticmethod
|
|
20
|
+
def load(file: io.TextIOBase | PathLike | str,
|
|
21
|
+
backend: str = 'ruamel') -> object:
|
|
22
|
+
...
|
|
23
|
+
|
|
24
|
+
@staticmethod
|
|
25
|
+
def loads(text: str, backend: str = 'ruamel') -> object:
|
|
26
|
+
...
|
|
27
|
+
|
|
28
|
+
@staticmethod
|
|
29
|
+
def coerce(data: str | PathLike | dict | list,
|
|
30
|
+
backend: str = 'ruamel') -> object:
|
|
31
|
+
...
|
|
32
|
+
|
|
33
|
+
@staticmethod
|
|
34
|
+
def InlineList(items):
|
|
35
|
+
...
|
|
36
|
+
|
|
37
|
+
@staticmethod
|
|
38
|
+
def Dict(data):
|
|
39
|
+
...
|
|
40
|
+
|
|
41
|
+
@staticmethod
|
|
42
|
+
def CodeBlock(text):
|
|
43
|
+
...
|