python-jack-knife 0.6.7__tar.gz → 0.6.9__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.
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/PKG-INFO +1 -1
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/stdout.py +17 -7
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/version.py +1 -1
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/python_jack_knife.egg-info/PKG-INFO +1 -1
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/LICENSE +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/README.md +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/pyproject.toml +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/setup.cfg +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/__init__.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/common.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/components.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/integrations/opensearch_client.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/integrations/opensearch_index_sink.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/integrations/opensearch_query_pipe.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/integrations/postgres_pipe.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/integrations/snowflake_pipe.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/log.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/main.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/man_page.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/parser.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/__init__.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/denorm.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/factory.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/filter.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/head.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/join.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/let_reduce.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/map.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/move_field.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/progress_pipe.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/query_pipe.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/remove_field.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/sample.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/select.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/sort.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/tail.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/user_pipe_factory.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/pipes/where.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/progress.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/registry.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/__init__.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/create_sink.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/csv_sink.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/devnull.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/dir_sink.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/expect.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/factory.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/format_sink.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/graph.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/graph_bar_line.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/graph_cumulative.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/graph_hist.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/graph_scatter.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/json_sink.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/s3_sink.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/s3_stream.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/sinks.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/tsv_sink.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sinks/user_sink_factory.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/__init__.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/configs_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/csv_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/dir_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/factory.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/favorite_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/format_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/inline_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/json_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/lazy_file.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/lazy_file_local.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/lazy_file_s3.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/macro_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/npy_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/parquet_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/s3_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/source_list.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/sql_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/tsv_source.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/sources/user_source_factory.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/usage.py +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/python_jack_knife.egg-info/SOURCES.txt +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/python_jack_knife.egg-info/dependency_links.txt +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/python_jack_knife.egg-info/entry_points.txt +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/python_jack_knife.egg-info/requires.txt +0 -0
- {python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/python_jack_knife.egg-info/top_level.txt +0 -0
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
import sys
|
|
5
5
|
import yaml
|
|
6
|
+
from yaml.representer import SafeRepresenter
|
|
6
7
|
from pjk.components import Sink, Source
|
|
7
8
|
from pjk.usage import ParsedToken, Usage
|
|
8
9
|
from pjk.common import pager_stdout
|
|
@@ -21,25 +22,34 @@ class StdoutSink(Sink):
|
|
|
21
22
|
|
|
22
23
|
def __init__(self, ptok: ParsedToken, usage: Usage):
|
|
23
24
|
super().__init__(ptok, usage)
|
|
24
|
-
|
|
25
|
-
# NOTE: self.use_pager is hardcoded for now; override via constructor if needed
|
|
26
25
|
self.use_pager = True if usage.get_param('less') == None else usage.get_param('less') == 'true'
|
|
27
26
|
|
|
28
27
|
def process(self) -> None:
|
|
29
|
-
# Route all stdout into `less` while dumping
|
|
30
28
|
try:
|
|
31
29
|
with pager_stdout(self.use_pager):
|
|
32
30
|
for record in self.input:
|
|
33
31
|
try:
|
|
32
|
+
# if it's a simple single-key map whose value is a string, print raw
|
|
33
|
+
# kind of hack to make 'pjk macros -' cut-n-pastable
|
|
34
|
+
if isinstance(record, dict) and len(record) == 1:
|
|
35
|
+
(k, v), = record.items()
|
|
36
|
+
if isinstance(v, str):
|
|
37
|
+
sys.stdout.write(f"{k}: {v}\n---\n")
|
|
38
|
+
continue
|
|
39
|
+
|
|
40
|
+
# everything else -> normal YAML
|
|
41
|
+
print('foo')
|
|
34
42
|
yaml.dump(
|
|
35
43
|
record,
|
|
36
|
-
sys.stdout,
|
|
44
|
+
sys.stdout,
|
|
37
45
|
sort_keys=False,
|
|
38
46
|
explicit_start=True,
|
|
39
|
-
|
|
47
|
+
allow_unicode=True,
|
|
48
|
+
width=10**9,
|
|
40
49
|
)
|
|
41
50
|
except BrokenPipeError:
|
|
42
|
-
break
|
|
51
|
+
break
|
|
43
52
|
except BrokenPipeError:
|
|
44
|
-
# Swallow if pager closed early
|
|
45
53
|
pass
|
|
54
|
+
|
|
55
|
+
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/integrations/opensearch_client.py
RENAMED
|
File without changes
|
{python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/integrations/opensearch_index_sink.py
RENAMED
|
File without changes
|
{python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/pjk/integrations/opensearch_query_pipe.py
RENAMED
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/python_jack_knife.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/python_jack_knife.egg-info/entry_points.txt
RENAMED
|
File without changes
|
{python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/python_jack_knife.egg-info/requires.txt
RENAMED
|
File without changes
|
{python_jack_knife-0.6.7 → python_jack_knife-0.6.9}/src/python_jack_knife.egg-info/top_level.txt
RENAMED
|
File without changes
|